///////////////////////////////////////////////////////////////////////
// ITS – Visoka Škola Strukovnih Studija Za Informacione Tehnologije
// https://www.its.edu.rs/
// Predmet: Osnovi Programiranja – Programski jezik C
//
// Primer: Odredjivanje uglova trougla,
// ako su zadate koordinate njegovih temena
///////////////////////////////////////////////////////////////////////
#include <stdio.h>
#include <math.h>
#define PI 3.141592
main()
{
double xa, ya, xb, yb, xc, yc, a, b, c, alfa, beta, gama;
int izraz =0;
printf("Unesite koordinate tacke A(x,y): ");
scanf("%lf%lf",&xa,&ya);
printf("Unesite koordinate tacke B(x,y): ");
scanf("%lf%lf",&xb,&yb);
printf("Unesite koordinate tacke C(x,y): ");
scanf("%lf%lf",&xc,&yc);
// izracunavanje stranica
a = sqrt(pow(xb-xc,2) + pow(yb-yc,2));
b = sqrt(pow(xa-xc,2) + pow(ya-yc,2));
c = sqrt(pow(xa-xb,2) + pow(ya-yb,2));
printf("Stranica a je: %f
", a);
printf("Stranica b je: %f
", b);
printf("Stranica c je: %f
", c);
// vrednost 0 se tumaci kao FALSE, a bilo koja nenulta vrednost kao TRUE
izraz = (a>=(b+c)) || (b >= (a+c)) || (c>=(a+b));
if(izraz == 0)
{
alfa = acos( (b*b+c*c-a*a) / (2*b*c) );
beta = acos( (c*c+a*a-b*b) / (2*c*a) );
gama = acos( (a*a+b*b-c*c) / (2*a*b) );
alfa *= 180/PI;
beta *= 180/PI;
gama *= 180/PI;
printf("Alfa = %.2f
Beta = %.2f
Gama = %.2f
",alfa,beta,gama);
}
else
printf("Ne moze se kreirati trougao
");
}