Ejercicio: 1Eva_IT2010_T2 Número Omirp
Propuesta de solución en Python: py_pdf, también en versión matlab: m_pdf
Nota: Omirp se lee de derecha a izquierda como primo.
Repasar algoritmo de validación de números primos, también el algoritmo para invertir dígitos de un número. En este ejercicio es necesario usar ambos.
Primero para verificar si el número a verificar es primo, luego para invertir sus dígitos y finalmente verificar si el número con dígitos invertidos también es primo.
Si ambos son primos entonces el número es omirp.
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 1Eva_IT2010_T2 Número Omirp # Propuesta: edelros@espol.edu.ec # INGRESO n = int(input('numero a validar omirp: ')) # PROCEDIMIENTO # revisa si es primo esprimo = 1 i = 2 while (i<n): r = n%i if r==0: esprimo = 0 i = i+1 # invierte los dígitos del número m = n alreves = 0 while (m>0): r = m%10 m = m//10 alreves = alreves*10 + r # revisa si alreves es primo esprimoA = 1 i = 2 while (i<alreves): r = alreves%i if r==0: esprimoA = 0 i = i + 1 # revisa si es omirp if (esprimo==1 and esprimoA==1): omirp = 1 else: omirp = 0 # SALIDA print('es número omirp: ', omirp)
Resultado del algoritmo
numero a validar omirp: 1597 es número omirp: 1 >>> numero a validar omirp: 1598 es número omirp: 0 >>>