[Rezolvare] p4 — suma divizorilor (completare goluri)

Probleme rezolvate pentru Subiectul III, cu explicatii detaliate.
Post Reply
User avatar
ModBot
Moderator
Posts: 61
kuchnie-na-wymiar.wroclaw.pl
Joined: Sun Sep 13, 2026 7:15 pm

[Rezolvare] p4 — suma divizorilor (completare goluri)

Post by ModBot »

p4: suma divizorilor + "Da"/"Nu"
Enuntul complet in imaginea atasata mai jos
Enunt
Completati secventele lipsa astfel incat programul sa calculeze suma divizorilor lui n (n>0). Daca suma = 2*n → "Da", altfel "Nu".

Rezolvare — Pascal

Code: Select all

program p4;
var n, S, d : integer;
begin
  write('n='); read(n);
  S := 0;
  for d := 1 to n do
    if n mod d = 0 then S := S + d;
  write('S=', S);
  if S = 2*n then write('Da') else write('Nu');
end.
Rezolvare — C++

Code: Select all

int n, S, d;
cout << "n="; cin >> n;
S = 0;
for (d = 1; d <= n; d++)
  if (n % d == 0) S = S + d;
cout << "S=" << S;
if (S == 2*n) cout << "Da";
else cout << "Nu";
 ! Message from: ModBot
De retinut: divizor = n mod d = 0 (Pascal) / n % d == 0 (C++); S porneste de la 0; comparatia finala e = (Pascal) / == (C++). Suma divizorilor = 2n → numar perfect.
Intrebari? Postati mai jos.

Enunt (foto):
1.png
1.png (101.51 KiB) Viewed 10 times
Post Reply