👤

Sa se scrie un program care citeste numere intregi pana la intalnirea lui 0 si care determina cate dintre aceste numere sunt numere perfecte
Repede, va rog!!


Răspuns :

Răspuns:

#include <iostream>

#include <math.h>

using namespace std;

int main (){

   int x;

   cin>>x;

   while (x!=0){

       cin>>x;

   if (int(sqrt(x))==sqrt(x))

       cout<<x<<" ";

   }

   return 0;

}

Explicație:

Conditia e ca radicalul numarului citit sa fie de tip intreg.

Răspuns:

#include <iostream>

using namespace std;

int x, contor;

bool perfect(int num)

{

   int s=1,d;

   for (d=2; d*d<num; ++d)

   {

       if (num%d==0)

       {

           s=s+d+num/d;

       }

   }

   return s==num;

}

int main()

{

   cout << "Introdu numere naturale, (STOP este 0 !) " << endl;

   cin >> x;

   if (x==0) cout << "opss...  sir vid...";

   else

   {

      while (x)

      {

         if (perfect(x)) ++contor;

         cin >> x;

      }

      cout << "Sirul numeric contine "<<contor<< " numere perfecte ";

   }

   return 0;

}

Explicație:

Un număr perfect este acel număr întreg egal cu suma divizorilor săi, exceptând numărul însuși, desigur.

6 este număr perfect, deoarece 6=1+2+3

Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.


Wix Learning: Alte intrebari