Найти площадь и периметр треугольника по координатам

помогите найти ошибку пожалуйста
даны три координаты треугольника
нужно найти периметр и площадь треугольника
p-полупериметр(нужен для нахождения площади)

#include <stdio.h>
#include <stdlib.h>



int main()
{
int x1,y1,x2,y2,x3,y3 ;
char S,p,a,b,c,P ;

    printf("vvedite koordinati pervoy versini");
    scanf("%d",&x1,&y1);
    printf("vvedite koordinati vtoroy versini");
    scanf("%d,",&x2,&y2);
    printf("vvedite koordinati tretey versini");
    scanf("%d",&x3,&y3);
a = (sqrt(sqr(x2-x1)+sqr(y2-y1)));
b = (sqrt(sqr(x3-x2)+sqr(y3-y2)));
c = (sqrt(sqr(x3-x1)+sqr(y3-y1)));
P = a+b+c;
p = (a+b+c)/2;
S = (sqrt((p*((p-a)+(p-b)+(p-c)));
printf("plosad treugolnika =%d",S);
printf("perimetr treugolnika =%d",P);

return 0 ;
}

А как она себя проявляет?)

error: expected ‘)’ before ‘;’ token| 22 строчка

error: expected ‘)’ before ‘}’ token| 26 строчка

error: expected ‘;’ before ‘}’ token| 26 строчка

Ну так проверяйте скобки, видимо где-то пропущена или лишняя )

И чтоб было немного проще, для начала можно убрать бесполезные скобки вокруг всего выражения:

image

1 лайк

типы данных НЕВЕРНЫЕ!
как Вы результат корня собираетесь в СИМВОЛЬНУЮ переменную сохранить?
я не знаю C/C++, но я бы рекомендовал использовать вещественный тип данных, например, double

1 лайк

В функции sqrt – допустимые типы данных: float, double, long double.
C++: std::sqrt, std::sqrtf, std::sqrtl - cppreference.com
C: sqrt, sqrtf, sqrtl - cppreference.com

1 лайк