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

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 de Apollyon
2

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;

}

Alte întrebări interesante