Números amigos

Álvaro Garijo Álvarez

/*Este programana dice si dos numeros dados son amigos
(Dos numeros son amigos si cada uno de ellos es igual
a la suma de los divisores del otro */

#include <iostream>
using namespace std;

bool sonAmigos(int n1, int n2);
int sumaDivisores(int n3);

int main()
{
int n, m;

cout << “Introduce un entero: “;
cin >> n;
cout << “Introduce otro entero: “;
cin >> m;

if(sonAmigos(n,m)) cout << “Son amigos”;
else cout << “No son amigos”;

return 0;
}

bool sonAmigos(int n1, int n2)
{
if(sumaDivisores(n1) == n2 && sumaDivisores(n2) == n1)
{
return true;
}
else
{
return false;
}
}

int sumaDivisores(int n3)
{
int valor = 0;
int i;
for(i=1; i<=n3/2; i++)
{
if(n3%i==0)
{
valor = valor + i;
}
}
return valor;
}

Anuncios
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s