24.2.3.24010440. Napisati program koji traži da se sa tastature unesu tri realna broja, a koji zatim ispisuje da li ta tri broja mogu biti stranice nekog pravouglog trougla.
Napomena: ne zna se koji od tri unesena broja predstavljaju katete, a koji hipotenuzu, tako da program treba da ponudi potvrdan odgovor kako na trojku brojeva 3, 4, 5, tako i na trojku brojeva 5, 4, 3 ili 3, 5, 4. Obavezno testirati program i na ulaznim podacima 0.3, 0.4 i 0.5!

Opis rješenja:

Listing programa:

#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
int main()
{
const double r(1e-5);double a,b,c;
cin>>a>>b>>c;
if(a>b&&a>c)
    {if(abs(a*a-b*b-c*c) < r*abs(a*a))cout<<"trougao je pravougli.";
    else cout<<"trougao nije pravougli.";}
else if(b!=a&&b>c)
    {if(abs(b*b-a*a-c*c) < r*abs(b*b))cout<<"trougao je pravougli.";
    else cout<<"trougao nije pravougli.";}
else {if(abs(c*c-a*a-b*b) < r*abs(c*c))cout<<"trougao je pravougli.";
    else cout<<"trougao nije pravougli.";}
getch();
return 0;}

Ispis na ekranu:

Riješeni zadaci 2    Index