În C++. Se citesc două numere naturale nenule n și m. Să se verifice dacă cele două numere sunt

prietene. Două numere naturale sunt prietene dacă fiecare este egal cu suma divizorilor celuilalt,

fără numărul respectiv ca divizor.

Exemplu: Numerele n= 220, m= 284. Sunt numere prietene.​

Răspuns :

#include <iostream>

using namespace std;

int main()

{

   int n, m, s=0;

   bool check=false;

   cout<<"Dati numerele n și m:"; cin>>n>>m;

   for(int i=1; i<n; i++){

       if(n%i==0){

           s+=i;

       }

   }

   if(s==m){

       s=0;

       for(int i=1; i<m; i++){

       if(m%i==0){

           s+=i;

       }

   }

   if(s==n){

       cout<<"Numerele "<<n<<" și "<<m<<" sunt prietene!";

   } else {

       cout<<"Numerele "<<n<<" și "<<m<<" nu sunt prietene!";

       }

   } else {

       cout<<"Numerele "<<n<<" și "<<m<<" nu sunt prietene!";

   }

   return 0;

}

Rezultat:

Vezi imaginea Howardax