Lenguaje: Python
Categoría: POC
Cubre: Funciones, Condicionales, If
Nombre: es_potencia_de_dos.py
Repositorio: https://github.com/carlosgbr/PythonBasico/blob/main/es_potencia_de_dos.py
Compilado en: OnlineGdb
Enunciado
El siguiente código determina si un número es potencia de 2
Nota: ¡Intente ejecutar su función con el número 0 como entrada y vea lo que obtienes!
Código fuente
""" Funciones y condicionales while: es_potencia_de_dos.py
Se ilustra el uso de funciones y la estructura while en Python
Por https://about.me/carlosgbr
Fecha: 17/04/2022
Versión 1
Actualizado: 02/01/2025
Para Python 3.11 y superior
"""
def es_potencia_de_dos(n): # Define una función para comprobar si un número es una potencia de dos
if n <= 0: # Comprueba si el número es menor o igual a 0
return False # Devuelve False, ya que las potencias de dos son números positivos
# Divide repetidamente entre 2 mientras sea divisible por 2
while n % 2 == 0: # Itera mientras n sea divisible por 2
n = n / 2 # Divide n entre 2
# Si el resultado final es 1, es una potencia de dos
return n == 1 # Devuelve True si n es 1, de lo contrario devuelve False
#Comprobación
print(es_potencia_de_dos(0)) # Debe ser False
print(es_potencia_de_dos(1)) # Debe ser True
print(es_potencia_de_dos(8)) # Debe ser True
print(es_potencia_de_dos(9)) # Debe ser False
Salida del programa
Ejecuta online del programa
Pulsa el botón Exec para ejecutar el programa, ¡también puedes modificar el código y comprobar la salida!
Notas
Ninguna.
Informar de errores
Si encuentras algún error o aporte a la información proporcionada por favor dirígela a soporte@ehack.mx
Otras consideraciones
Si deseas que desarrollemos un ejemplo en particular, escríbelo en los comentarios.
Si tienes alguna duda que no se responde en este documento, por favor plantea tu pregunta para poder responderte. O escribe directamente a soporte@ehack.mx
Referencias
- Por Roberto C. González para Ethical Hack
- Coursera
Fuente Imágenes
- Todas las imágenes de esta sección cortesía by Nala Systems
Pruebas de concepto (PoC) en Python
- Volver al índice de temas PoC en Python
- El código fuente de toda la serie lo puedes descargar de nuestro repositorio en github busca los programas con el nombre del encabezado de cada programa.
POC - Python para Ethical Hack, por Roberto C. González. Se distribuye bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional.
Ⓟ 2025, Ethical Hack, Todos los derechos reservados sobre el contenido propio.