Разработать программу, которая считывает с клавиатуры данные треугольника и отображает площадь каждого треугольника.
struct punct {
int x,y;}
struct triunghi {
int a,b,c;}
Вообщем я сделал программу, но проблема в том что я нашел что надо вот как то так писать.
S=0.5*fabs(Ax*By+Ay*Cx+Bx*Cy-By*Cx-Cy*Ax-Ay*Bx);
Ну это не работает. Как по другому сделать, кто нибудь знает?
Вот программа:
#include
#include
struct punct{
int x,y;
}punct;
struct triunghi{
int a,b,c;
}triunghi;
int main(void) {
int i,n,a[10],p,s;
float aria;
printf("Introdu numarul de triunghiuri: ");
scanf("%d",&n);
printf(" Introdu datele triunghiului: ");
for(i=0;i<n;i++)
{
printf(" Triunghi [%d]",i+1);
printf(" Lungimea laturilor a,b si c: ");
scanf("%d%d%d",&triunghi.a,&triunghi.b,&triunghi.c);
printf(" Introdu x,y: ");
scanf("%d%d",&punct.x,&punct.y);
p=(triunghi.a+triunghi.b+triunghi.c)/2;
aria=sqrt(p*(p-triunghi.a)*(p-triunghi.b)*(p-triunghi.c));
printf("Aria triunghiului [%d] este = %f ",i+1,aria);
}}
struct punct {
int x,y;}
struct triunghi {
int a,b,c;}
Вообщем я сделал программу, но проблема в том что я нашел что надо вот как то так писать.
S=0.5*fabs(Ax*By+Ay*Cx+Bx*Cy-By*Cx-Cy*Ax-Ay*Bx);
Ну это не работает. Как по другому сделать, кто нибудь знает?
Вот программа:
#include
#include
struct punct{
int x,y;
}punct;
struct triunghi{
int a,b,c;
}triunghi;
int main(void) {
int i,n,a[10],p,s;
float aria;
printf("Introdu numarul de triunghiuri: ");
scanf("%d",&n);
printf(" Introdu datele triunghiului: ");
for(i=0;i<n;i++)
{
printf(" Triunghi [%d]",i+1);
printf(" Lungimea laturilor a,b si c: ");
scanf("%d%d%d",&triunghi.a,&triunghi.b,&triunghi.c);
printf(" Introdu x,y: ");
scanf("%d%d",&punct.x,&punct.y);
p=(triunghi.a+triunghi.b+triunghi.c)/2;
aria=sqrt(p*(p-triunghi.a)*(p-triunghi.b)*(p-triunghi.c));
printf("Aria triunghiului [%d] este = %f ",i+1,aria);
}}