Informatică, întrebare adresată de mariamateicristian, 8 ani în urmă

Să se scrie un program care verifică dacă un număr natural citit de la tastatura este pătrat perfect în C++​


riciyungnhandsum2898: #include
using namespace std;

bool este_patrat_perfect(long double x)
{
// gasim valoare de tip real
// pentru radical de x
if (x >= 0) {

long long sr = sqrt(x);

// daca produsul radicalului
// este egal, atunci
// returnam T/F
return (sr * sr == x);
}
// returnam fals daca n<0
return false;
}

int main()
{
long long x = 2502;
if (este_patrat_perfect(x))
cout << "Numarul este patrat perfect";
else
cout << "Numarul nu este patrat perfect";
return 0;
}
riciyungnhandsum2898: #include
riciyungnhandsum2898: #include bits/stdc++.h
mariamateicristian: sper că e corect ce ai scris, dar mersi mult!
mariamateicristian: îmi dă eroare
mariamateicristian: deși am dat copy-paste la ce ai scris

Răspunsuri la întrebare

Răspuns de ezio43
2

Răspuns:

#include<iostream>

#include<math.h>

using namespace std;

int main()

{

 int a;

 float radical;

 cin>>a;

 radical=sqrt(a);

 if(radical==floor(radical))

    cout<<"este patrat perfect";

 else

    cout<<"nu este patrat perfect";

}

Explicație:

Alte întrebări interesante