Lenguaje: Python
Categoría: POC
Cubre: Funciones, Condicionales, If
Nombre: es_potencia_de_dos.py
Repositorio: https://github.com/carlosgbr/python0/blob/master/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 obtiene!
Código fuente
""" Funciones y condicionales while: es_potencia_de_dos.py
Por about.me/carlosgbr
Versión 1
Para Python 3.0 y superior
Se ilustra el uso de funciones y la estructura while en Python
"""
def es_potencia_de_dos(n):
# Compruebe si el número se puede dividir por dos sin residuo
while n % 2 != 0:
n = n / 2
# Si después de dividir entre dos el número es 1, es una potencia de dos
if n == 0:
return False
return True
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

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.
Referencias
- Coursera by Roberto C. González
Fuente Imágenes:
Imágenes cortesía by Nala Systems
POC - Python by Roberto C. González para Ethical Hack © 2020, Ethical Hack