Hola, Alberto, espero que estés bien
Sugerencia: compartir tu proyecto en el canal #comparta-tu-codigo en el servidor ONE en Discord ;)
Parece que tu código está casi correcto, pero hay un pequeño detalle que deberías ajustar. En el segundo caso de prueba, cuando ingresas el número 3, el programa está mostrando tanto "Divisible por 3" como "Divisible por 5". Esto sucede porque falta un return
o break
después de cada print
dentro de los bloques if
y elif
, para que el programa no continúe evaluando las siguientes condiciones.
Sin embargo, en este caso, el uso de return
o break
no es necesario si solo deseas imprimir un mensaje por ejecución. La estructura if-elif-else
ya debería manejar esto correctamente. Asegúrate de que el código está correctamente alineado y que no hay errores de indentación.
Aquí está tu código corregido:
numero = int(input('Ingrese un numero entero: '))
if numero % 3 == 0 and numero % 5 == 0:
print('¡Número Mágico!')
elif numero % 3 == 0:
print('Divisible por 3')
elif numero % 5 == 0:
print('Divisible por 5')
else:
print('No es un numero magico')
Con esta estructura, el programa debería funcionar correctamente y solo mostrar un mensaje por cada número ingresado.
Espero que esto te ayude y buenos estudios!