Ejercicios: 1Eva2014TII_T1 Números amigos

Dos números enteros positivos a y b son amigos sí solo sí la suma de los divisores de a es igual al número b, y la suma de los divisores de b es igual al número a.
Se divide el ejercicio en dos partes, primero la suma de divisores del número a.
# suma de divisores para "a"
atotal = 1
i = 2
while (i<a):
r = a%i
if (r==0):
atotal = atotal + i
i = i + 1
El concepto se repite par la suma de divisores de b.
El resultado se obtiene comparando las sumas de divisores
if (atotal==b and btotal==a):
namigos = 1
else:
namigos = 0
Se muestran los resultados al final
Algoritmo en Python
# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 1Eva_IIT2014_T1 Números amigos
# Propuesta de solucion: edelros@espol.edu.ec
# INGRESO
a = int(input("número a: "))
b = int(input("número b: "))
# PROCEDIMIENTO
# suma de divisores para "a"
atotal = 1
i = 2
while (i<a):
r = a%i
if (r==0):
atotal = atotal + i
i = i + 1
# suma de divisores para "b"
btotal = 1
j = 2
while (j<b):
r = b%j
if (r==0):
btotal = btotal + j
j = j + 1
if (atotal==b and btotal==a):
namigos = 1
else:
namigos = 0
# SALIDA
print('números amigos: ', namigos)
resultado del algoritmo
número a: 220
número b: 284
números amigos: 1
>>>
número a: 221
número b: 284
números amigos: 0
Diagrama de Flujo: Mientras-Repita


Diagrama de Flujo: Repita-Hasta

