Subprogramul suma are un singur parametru, n, prin care primește un număr natural (n∈[1,10⁶]).
Subprogramul returnează suma divizorilor pozitivi ai lui n care nu sunt primi.
Scrieți definiția completă a subprogramului.
Exemplu: pentru n=12 subprogramul returnează 23 (23=1+4+6+12).
Răspunsuri la întrebare
Răspuns de
12
Răspuns:
#include <iostream>
using namespace std;
int SDNuP(int n)
{
int s=1;
for (int d=4; d<=n ; d++) {
if (n%d==0) {
int p=1;
for (int i=4; i<=d && p==1; i++) {
if (d%i==0) p=0;
}
if (p==0) s+=d;
}
}
return s;
}
int main()
{
int num;
cin >> num;
cout << SDNuP(num);
return 0;
}
Explicație:
Alte întrebări interesante
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă