👤

Se citește un număr natural n. Să se determine suma divizorilor pari ai săi.

Date de intrare:
Programul citește de la tastatură numărul n.

Date de iesire:
Programul afișează pe ecran numărul S, reprezentând suma divizorilor pari ai lui n.

Restricţii şi precizări:
0
Exemplu:
Intrare:
30
Ieșire:
48

Explicație;
Divizorii pari lui 30 sunt 2, 6, 10 și 30. Suma lor este 48.



Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int main ()

{

 int n;

 cin >> n;

 int sum = 0;

 if(n % 2 == 0){

     sum = n;

 }

 for(int i = 2;i<=n/2;i++){

     if(n%i == 0 && i %2 ==0){

         sum+=i;

     }

 }

 cout<<sum;

 return 0;

}

Explicație:

Daca numarul este par il adaugam direct la suma pentru a parcurge numerele de la 2 la n/2(pentru a nu parcurge tot numarul => o eficienta mai buna).

Daca numarul se imparte la unul din numerele de la 2 pana la n/2 atunci acesta este divizor, iar daca acesta este par il adaugam la suma.

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Ne bucurăm să vă revedem și vă invităm să ne adăugați în lista de favorite!


Ze Schools: Alte intrebari