Вычислить площадь треугольника с использованием функции нахождения расстояния между двумя точками - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Треугольник задан своими координатами своих вершин. Вычислить площадь треугольника с использованием функции нахождения расстояния между двумя точками. формула: корень(x2-x1)^2+(y2-y1)^2

Решение задачи: «Вычислить площадь треугольника с использованием функции нахождения расстояния между двумя точками»

textual
Листинг программы
  1. #include<conio.h>
  2. #include<stdio.h>
  3. #include<stdlib.h>
  4. #include<locale.h>
  5. #include<math.h>
  6.  
  7. float stor(float v1,float t1,float v2,float t2);//v-это x,t-это y
  8.  
  9. void main(void)
  10. {
  11.     setlocale(LC_ALL,"Russian");
  12.     float XY[2][3],p[3],k,S;
  13.     int i,j;
  14.     printf("Задание:\nТреугольник задан своими координатами своих вершин. Вычислить площадь\nтреугольника с использованием функции нахождения расстояния между двумя точками.Для вычисления площади используется формула Герона.\n\n");
  15.     printf("Введите координаты точек\n");
  16.     for(j=0;j<3;j++)
  17.     {
  18.         printf("Введите x%d__",j+1);
  19.         fflush(stdin);
  20.         scanf("%f",&XY[0][j]);
  21.         printf("Введите y%d__",j+1);
  22.         fflush(stdin);
  23.         scanf("%f",&XY[1][j]);
  24.     }
  25.         p[0]=stor(XY[0][0],XY[1][0],XY[0][2],XY[1][2]);
  26.         p[1]=stor(XY[0][1],XY[1][1],XY[0][2],XY[1][2]);
  27.         p[2]=stor(XY[0][0],XY[1][0],XY[0][1],XY[1][1]);
  28.     for(i=0;i<3;i++)
  29.     {
  30.         printf("Длина стороны %d=%10.2f\n",i+1,p[i]);
  31.     }
  32.     k=(p[0]+p[1]+p[2])/2;
  33.     S=sqrt(k*(k-p[0])*(k-p[1])*(k-p[2]));
  34.     printf("\n Площадь треугольника равна %f",S);
  35.     getch();
  36. }
  37.  
  38. float stor(float v1,float t1,float v2,float t2)
  39. {
  40.     float f;
  41.     f=sqrt(pow(v2-v1,2)+pow(t2-t1,2));
  42.     return f;
  43. }

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы:
    • conio.h для функции getch(), которая используется для ожидания нажатия клавиши после вывода результата.
    • stdio.h для работы с функцией printf() и scanf().
    • stdlib.h для работы с функцией malloc() и free().
    • locale.h для установки текущей локали на русский язык.
    • math.h для использования функции sqrt(), которая вычисляет квадратный корень.
  2. Определяем функцию stor(float v1,float t1,float v2,float t2), которая вычисляет расстояние между двумя точками в двумерном пространстве.
  3. Создаем основную функцию main(void):
    • Устанавливаем текущую локаль на русский язык с помощью setlocale(LC_ALL,Russian);.
    • Объявляем массив XY[2][3] для хранения координат вершин треугольника.
    • Объявляем массив p[3] для хранения длин сторон треугольника.
    • Объявляем переменную k для хранения среднего арифметического длин сторон треугольника.
    • Объявляем переменную S для хранения площади треугольника.
    • Выводим задание для пользователя.
    • Считываем координаты вершин треугольника с помощью scanf().
    • Вычисляем длины сторон треугольника с помощью функции stor().
    • Выводим длины сторон треугольника.
    • Вычисляем среднее арифметическое длин сторон треугольника.
    • Вычисляем площадь треугольника с помощью формулы Герона.
    • Выводим площадь треугольника.
    • Ждем нажатия клавиши с помощью getch().
  4. В основной функции main(void) вызываем функцию stor(float v1,float t1,float v2,float t2) для вычисления длины стороны треугольника.
  5. Завершаем программу.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.571 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы