Escribe un algoritmo que imprima los numeros del 1 al 5000 no terminados en 3
Respuestas a la pregunta
Respuesta:
En Python quedaría de la siguiente manera:
for i in range(5000):
num = str(i+1)
if num[-1] != '3':
print(num)
Explicado línea por línea, este algoritmo lo primero que hace es establecer un loop o secuencia que se cumplirá para el rango de valores menores a 5000.
Como i es un número entero y a mí me interesa analizarlo como una cadena de caracteres para así poder verificar si su último dígito es 3, y como mi secuencia empieza en i = 0 (por default en Python), en la segunda línea del código hago una conversión de i + 1 de entero a string utilizando el comando str(*) y guardo en la variable num para acceder después a él.
El la siguiente línea hago la verificación de que el número NO termine con el dígito 3. Para esto accedemos a la variable num donde se encuentra nuestra cadena de caracteres que ahora guarda al número correspondiente a esa iteración del loop más uno, con [-1] accedemos a su último dígito y ahí verificamos que sea diferente (!=) que 3. Si dicho número cumple la condición, se utiliza el comando print(*) para imprimirlo.
Espero que te haya servido, si fue así, me ayudaría mucho si me regalas una corona :)