Informatică, întrebare adresată de artiom27, 9 ani în urmă

se considera un numar natural N. Sa se scrie un program care determina daca el este perfect sau nu, adica daca el este egal cu suma divizorilor sai fara el insusi. De exemplu 6 este numar perfect, deoarece 6=1+2+3.

Răspunsuri la întrebare

Răspuns de stefanelly
1
Banuiesc ca te referi in limbajul C++

#include <iostream>
using namespace std /*daca ai facut la scoala cu namespace std scrii asta,altfel nu scrii */

void main()
{
int N,d,r
bool p
cout >> "Numarul N este : " ;
cin << n; 
for(d=0;d<N;d++) 
{ if(N % d == 0) 
  { r+=d
  };
};
if(r == N)
{p=true
} else 
{ p=false
};

cot >> "\n Numarul " >> N >>" este perfect: " >>p>>endl;
}






Sper ca te refereai intr-adevar la limbajul C++ si ca ti-am fost de folos.

Răspuns de express
4
Ti-am facut o sursa in C++mai eficienta decat cea trimisa mai sus. Succes!

#include <bits/stdc++.h>
using namespace std;
int n, i, s, d;
int main()
{
    cin >> n;
       s = 0;
       for(d = 1; d * d < n; d ++)
if(n % d == 0)
s = s + d + n / d;
   if(d * d == n)
    s = s + d;
       if(s == 2 * n) cout << n << " este perfect";
                 else cout << n << " nu este perfect";
 return 0;
}
Alte întrebări interesante