va rog sa ma ajutați, dau coroana
Scrie un program care, citind un număr natural verifica dacă este pătrat perfect sau nu. Să se rezolve în GDB.ONLINE C++
Răspunsuri la întrebare
Răspuns:
#include <cmath>
#include <iostream>
using std::cout, std::cin, std::endl;
static bool estePatratPerfect(int numar) {
/*
de exemplu dacă număr este 16
static_cast<int>(sqrt(16)) va fi 4
sqrt(16) va fi 4
4 == 4 deci număr (inițial 16 este pătrat perfect)
în schimb dacă număr este 5
static_cast<int>(sqrt(5)) va fi 2
sqrt(5) va fi 2.236...
2 != 2.236... rezultatul este fals, deci numărul 5 nu este pătrat perfect
*/
return static_cast<int>(sqrt(numar)) == sqrt(numar);
}
int main() {
int nrCitit;
cout << "Introdu numarul pentru a verifica daca este patrat perfect (de ex 16) >> ";
cin >> nrCitit;
// dacă „estePatratPerfect” returnează adevărat
estePatratPerfect(nrCitit)
// afișăm că numărul citit este pătrat perfect
? cout << nrCitit << " este patrat perfect!" << endl
// altfel afișăm că numărul citit nu este pătrat perfect
: cout << nrCitit << " nu este patrat perfect!" << endl;
return 0;
}