Agregar múltiples condiciones en un bucle while en Python
Tengo problemas para agregar estas 3 condiciones en un bucle while, ¿dónde está el error?
n = eval(input("Number: "))
i = 0
while (i % 3 == 0) and (i % 5 == 0) and (i < n):
print(i, end=" ")
i = i + 1
Quiero que imprima los números divisibles por 3 y 5 siempre que i <n. Si escribo 100 me devuelve 0 ahora mismo.
Aceptado
Debes separar las condiciones para la división y ser menor que n
, haciendo que esta última while
sea la condición del bucle y la primera una if
condición dentro del while
bucle; además, debes usar int
en lugar de eval
para obtener el valor de entrada como un número entero:
n = int(input("Number: "))
i = 0
while i < n:
if (i % 3 == 0) and (i % 5 == 0):
print(i, end=" ")
i = i + 1