Trójką pitagorejską nazywa się w matematyce trzy liczby naturalne a,b,c
spełniające warunek a^2 + b^2 = c^2. Napisać program wczytujący 3 liczby
naturalne i sprawdzający czy tworzą one trójkę pitagorejską.
Posiadam takie rozwiązanie;
a)jednak nie rozumiem dla czego są te 3 róznę ify skoro ma spełniać tylko ten jeden warunek a^2 + b^2 = c^2
b) nie miałem nigdy doczynienia z funkcją bool może ma ktoś jakiś namiar na fajne wytłumaczenie ?
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
bool wynik=false;
cout << "Podaj trzy rozne liczby naturalne: ";
cin>>a>>b>>c;
if (a*a + b*b == c*c or a*a + c*c == b*b) wynik=true;
if (b*b + a*a == c*c or b*b + c*c == a*a) wynik=true;
if (c*c + a*a == b*b or c*c + b*b == a*a) wynik=true;
if (wynik) cout<<"Podane liczby tworza trojke pitagorejska"<<endl;
else cout<<"Podane liczby nie tworza trojki pitagorejskiej"<<endl;
return 0;
}