s1Eva_IIT2014_T1 Verificar si a y b son Números amigos

Ejercicios: 1Eva_IIT2014_T1 Números amigos

[ algoritmo ] diagrama flujo: [ mientras-repita ] [ repita-hasta ]

equipo01Dos 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 ] diagrama flujo: [ mientras-repita ] [ repita-hasta ]
..


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

[ algoritmo ] diagrama flujo: [ mientras-repita ] [ repita-hasta ]
..


Diagrama de Flujo: Mientras-Repita


[ algoritmo ] diagrama flujo: [ mientras-repita ] [ repita-hasta ]
..


Diagrama de Flujo: Repita-Hasta

[ algoritmo ] diagrama flujo: [ mientras-repita ] [ repita-hasta ]

ejercicios resueltos Python 1eva_iit2014_t1 pdf