Informatică, întrebare adresată de Aldik, 8 ani în urmă

Scrieti un program C++ care efectueaza ceea ce este indicat jos, apoi afiseaza rezultatul (se recomanda ca sa fie efectuata cu instructiunea "for")

- determina daca doua numere sunt prietene (daca fiecare din ele este egal cu suma divizorilor celuilalt numar).

Răspunsuri la întrebare

Răspuns de VxF
1

Răspuns:

#include <iostream>

int sumaDivizorilor(int numar)

{

   int suma = 0;

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

       if (numar % i == 0) {

           suma += i;

       }

   }

   return suma;

}

int main()

{

   int primul, aldoilea;

   std::cout << "Primul: ";

   std::cin >> primul;

   std::cout << "Al doilea: ";

   std::cin >> aldoilea;

   bool prietene = sumaDivizorilor(primul) == aldoilea && sumaDivizorilor(aldoilea) == primul;

   std::cout << primul << " și " << aldoilea << (prietene ? "" : " nu") << " sunt numere prietene" << std::endl;

}

Alte întrebări interesante