Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2010, 17:59   #1
varlonec
Пользователь
 
Регистрация: 10.12.2009
Сообщений: 24
По умолчанию Вычислить площадь треугольника. С++

Помогите пожалуйста решить задачу

составить ф-ию, вычисляющую площадь треугольника, заданного координатами вершин. (1,2) (подпрограммы)

спасибо заранее
varlonec вне форума Ответить с цитированием
Старый 26.01.2010, 18:03   #2
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Используй формулу Герона:
Код:
s := sqrt(p*(p-a)*(p-b)*(p-c))
, где
Код:
p := (a+b+c)/2

Последний раз редактировалось profi; 26.01.2010 в 18:06.
profi вне форума Ответить с цитированием
Старый 26.01.2010, 20:07   #3
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
По умолчанию

это абсолютный тупизм использовать формулу Герона.
площадь треугольника, заданного координатами вершин, вычислется как половина модуля векторного произведения. Определитель 2-го порядка.
Код:
#include <stdio.h>
#include <math.h>

struct point
{
	float x, y;
};

float triangleArea(point p1, point p2, point p3)
{
	point vector1, vector2;
	vector1.x = p2.x - p1.x;
	vector1.y = p2.y - p1.y;
	vector2.x = p3.x - p1.x;
	vector2.y = p3.y - p1.y;
	return 0.5 * abs(vector1.x * vector2.y - vector2.x * vector1.y);
}

int main()
{
	point a, b, c;
	scanf("%f%f", &a.x, &a.y);
	scanf("%f%f", &b.x, &b.y);
	scanf("%f%f", &c.x, &c.y);
	printf("%f", triangleArea(a, b, c));
}
Alex_FF вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++, площадь окружностей kolesoo Помощь студентам 0 05.11.2009 22:30
Площадь фигур Вор Паскаль, Turbo Pascal, PascalABC.NET 3 18.05.2009 22:44
Вычислить параметр треугольника АВС в паскале. Freeman_DR Паскаль, Turbo Pascal, PascalABC.NET 4 26.10.2008 21:11
ассемблер. Написать функцию, вычисляющую по заданным точкам а,b,c площадь треугольника abс. qimbo Помощь студентам 5 05.01.2008 13:54