Из паскаля в си: Даны координаты вершин некоторого четырехугольника, найти его площадь по формуле Герона - C (СИ)
Формулировка задачи:
procedure Plsh(x1,y1,x2,y2,x3,y3:real;var s:real); var a,b,c,p:real; begin a:=sqrt(sqr(x1-x2)+sqr(y1-y2)); b:=sqrt(sqr(x2-x3)+sqr(y2-y3)); c:=sqrt(sqr(x3-x1)+sqr(y3-y1)); p:=(a+b+c)/2; s:=sqrt(p*(p-a)*(p-b)*(p-c)); end;
Решение задачи: «Из паскаля в си: Даны координаты вершин некоторого четырехугольника, найти его площадь по формуле Герона»
#include <stdio.h> #include <math.h> double geron(double, double, double, double, double, double); int main() { double x1, y1, x2, y2, x3, y3; scanf("%lf%lf%lf%lf%lf%lf", &x1, &y1, &x2, &y2, &x3, &y3); printf("%f\n", geron(x1, y1, x2, y2, x3, y3)); return 0; } double geron(double x1, double y1, double x2, double y2, double x3, double y3) { double a, b, c, p, s; a = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)); b = sqrt((x2 - x3) * (x2 - x3) + (y2 - y3) * (y2 - y3)); c = sqrt((x3 - x1) * (x3 - x1) + (y3 - y1) * (y3 - y1)); p = (a+b+c)/2; s = sqrt(p * (p - a) * (p - b) * (p - c)); return s; }
Объяснение кода листинга программы
В этом коде функция geron вычисляет площадь четырехугольника по формуле Герона. Входные данные для функции - координаты вершин четырехугольника, которые пользователь вводит в основной функции main. Функция main сначала объявляет переменные x1, y1, x2, y2, x3, y3 для хранения координат вершин, а затем вызывает функцию scanf для ввода этих координат с клавиатуры. После ввода координат функция main вызывает функцию geron, передавая ей эти координаты в качестве аргументов, и выводит результат на экран с помощью функции printf. В функции geron сначала объявляются переменные a, b, c, p, s для хранения промежуточных значений, которые используются в вычислениях. Затем функция вычисляет длины сторон треугольников, образованных вершинами четырехугольника, с помощью функции sqrt и формулы a = sqrt((x1 - x2) (x1 - x2) + (y1 - y2) (y1 - y2)). Далее функция вычисляет полупериметр p четырехугольника, как среднее арифметическое длин его сторон. Затем функция вычисляет площадь четырехугольника по формуле Герона, используя полупериметр p и длины сторон треугольников. Наконец, функция возвращает значение площади четырехугольника, которое функция main выводит на экран с помощью функции printf.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д