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
|
|