Está en la página 1de 2

SOLUCION 2:

PPT’s Impresas y también se encuentra en CD.

PRIMERA FOTO

# creando la clase que soportara esta tarea


Class convergencia:
entrada = 0
salida = 0
sal_anterior = 0
cercano = 0
meta = 153
itera_cercano = 0
cifras = [ ]

def inicio (self, n):


return n
def de_cifrar (self, n):
a=[]
while n>0:
a.append (n%10)
n = n // 10
return a
def sumar_cubos (self , n) :
b=0
for x in range (0 , len (n)) :
b = b + n[x]**3
return b

SEGUNDA FOTO

# iniciando la prueba
prueba = convergencia ()
print (‘ Prueba de convergencia a 153 de números impares…’)
print ( ‘ ‘)

#validando los números a ingresar


Val = True
While val:
try:
n = int (input (‘Ingrese un numero impar: ‘) )
except ValueError:
print (“Entrada no valida intente de nuevo: ”)
else:
if n == 1 or n%2==0:
print (“Numero no valido”)
val = True
print (‘ ‘)

TERCERA FOTO
#iniciamos las interacciones de los números
while prueba.salida != prueba.meta:

# numeramos el ciclo
Prueba.iteraciones = prueba.iteraciones + 1

# salvamos resultado anterior


prueba.sal_anterior = prueba.salida

# ejecutamos las operaciones


prueba.cifras = prueba.de_cifrar (prueba.entrada)
prueba.salida = prueba.sumar_cubos (prueba.cifras)

# reasignamos el resultado
prueba.entrada = prueba.salida

# mostramos los pasos seguidos


Print (str (prueba.iteraciones) + ‘ ) ‘ + str (prueba.salida))

# validando primera iteración para asignar valor cercano


if prueba.iteraciones == 1:
prueba.cercano = prueba.salida

#Validar repetición de salida contra anterior o luego de un ciclo se repita la salida mas cercana
if prueba.iteraciones > 1 :
if prueba.salida == prueba.sal_anterior:
break
elif prueba.cercano == prueba.salida:
break
# Validando cercanía de la salida a la meta y actualizando la cercanía
if abs (prueba.cercano-prueba.meta) >abs (prueba.salida-prueba.meta) :
prueba.cercano = prueba.salida
prueba.itera_cercano = prueba.iteraciones

CUARTA FOTO

# Mostrando Resultados
if prueba.meta == prueba.salida:
print (‘ Salida: ‘ + str (prueba.salida))
print (‘ Numero de ciclos para llegar a ‘ + str (prueba.meta) + ‘ fueron: ‘ + str (prueba.iteraciones))
else:
print (‘ Salida cercana: ‘ + str (prueba.cercano))
print (‘ Numero de ciclos para acercarse a ‘ +str(prueba.meta)+ ‘ fueron: ‘ + str(prueba.itera_cercano))

input (‘ ‘ )

También podría gustarte