boa tarde.
meu professor passou uma atividade onde tenho que encontra os pares de números amigos, mas meu código ficar repetindo o primeiro par e nunca procura os outros.
#include<stdio.h>
#include<stdlib.h>
int amigo(int n1,int n2){
int div1=1,div2=1,soma1=0,soma2=0;
while(n1>=div1*2){
if(n1%div1==0){
soma1=soma1+div1;
}
div1++;
}
while(n2>=div2*2){
if(n2%div2==0){
soma2=soma2+div2;
}
div2++;
}
if(soma1==n2 && soma2==n1){ //neste caso sao amigos
return 1;
}
return 0;
}
int main(){
int x, y,f=220,k, num1,num2;
scanf("%d", &x);
for(y=1; y<=x; y++){ //repetir a quant de amigos a procurar
num1=f;
num2=num1;
while(num1){
while(num2){
//printf("%d %d\n",num1, num2);
num2++;
if(amigo(num1,num2)==1){
f=num1;k=num2;
printf("(%d,%d)",num1,num2);
num1=0;num2=0;
}
}
num1++;
}
}
}
main (1).zip