Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kompnet
41 / 1 / 0
Регистрация: 11.10.2011
Сообщений: 112
#1

Треугольник в треугольнике - C++

04.12.2011, 15:28. Просмотров 592. Ответов 1
Метки нет (Все метки)

Даны действительный числа x1,y1,x2,y2,...,x6,y6. Точки с координатами (x1,y1), (x2,y2), (x3,y3) рассматриваются как вершины первого треугольника, точки с координатами (x4,y4), (x5,y5), (x6,y6) - вершины второго треугольника. Выяснить, верно ли, что один треугольник целиком расположен внутри другого, и, если да, определить площадь области, принадлежащей внешнему треугольнику и не принадлежащей внутреннему. Определить подпрограммы, необходимые для выяснения взаимного расположения треугольников и вычисления площади треугольника.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2011, 15:28     Треугольник в треугольнике
Посмотрите здесь:

Создать базовый класс Треугольник с 2 наследниками: Равносторонний треугольник, Прямоугольный треугольник - C++
Задание звучит так: Нужно создать базовый класс Треугольник с двумя наследующими его классами - равносторонний треугольник (·...

Класс треугольник с произвольным классом - равнобедренный треугольник - C++
Создать класс треугольник, члены класса - длины 3-х сторон. Предусмотреть в классе методы проверки существования треугольника, вычисления и...

Точка в треугольнике - C++
Помогите! даны три вершины треугольника с координатами(коорд вводятся с клавиатуры) А(х1,y1) B(х2,y2) и С(х3,y3). И вводятся координаты...

Найти углы в треугольнике - C++
Стороны с горем пополам я смог найти, по ним нужно найти углы. Заранее благодарю. #include<iostream.h> #include<math.h> ...

Определить, находится ли точка в треугольнике - C++
заданы прямоугольные координаты Х1,У1,Х2,У2,Х3,У3 вершин треугольника и координаты Х и У точки. определить, находится ли точка в...

Линейная задача о круге в треугольнике - C++
Требования к программе: - Числовые значения переменных ввести с клавиатуры, вывод напоминания при этом обязательно; - Вывести на...

Нахождение всех углов в треугольнике - C++
Найти все углы треугольника со сторонами a , b , c . Предусмотреть в программе перевод радианной меры угла в градусы, минуты и секунды. ...

Лежит ли точка в круге и треугольнике - C++
Даны круг и треугольник на плоскости.Кординаты вводятся с клавиатуры.Даны кординаты точки. Узнать лежит ли точка в области пересечения 2ух...

Найти длины высот в треугольнике - C++
. Треугольник задан длинами сторон. Найти: а) длины высот; б) длины медиан; в) длины биссектрис; г) радиусы вписанной и описанной...

Определение наличия тупого угла в треугольнике - C++
Параметрами функций являются длины сторон треугольника a, b, c. Дальше определяете, есть ли в треугольнике тупой угол, или все острые. Если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kompnet
41 / 1 / 0
Регистрация: 11.10.2011
Сообщений: 112
11.12.2011, 13:20  [ТС]     Треугольник в треугольнике #2
Я программу то написал, но мне нужно чтобы она состояла из подпрограмм, но как это сделать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{float x1, x2, x3, x4, x5, x6, y1, y2, y3, y4, y5, y6,s1,s,s2,s11,s12,s13,s14,s15,s18,s19,s16,s17;
printf("\nВведите координаты 1 треугольника\n");
scanf("%f %f %f %f %f %f", &x1, &y1, &x2, &y2, &x3, &y3);
printf("Введите координаты 2 треугольника\n");
scanf("%f %f %f %f %f %f", &x4, &y4, &x5, &y5, &x6, &y6);
s1=fabs(((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1)))/2;
s2=fabs(((x5-x4)*(y6-y4)-(x6-x4)*(y5-y4)))/2;
 
if (s1>s2)
{
s11=fabs(((x2-x1)*(y4-y1)-(x4-x1)*(y2-y1)))/2;
s12=fabs(((x4-x1)*(y3-y1)-(x3-x1)*(y4-y1)))/2;
s13=fabs(((x2-x4)*(y3-y4)-(x3-x4)*(y2-y4)))/2;
 
s14=fabs(((x2-x1)*(y5-y1)-(x5-x1)*(y2-y1)))/2;
s15=fabs(((x5-x1)*(y3-y1)-(x3-x1)*(y5-y1)))/2;
s16=fabs(((x2-x5)*(y3-y5)-(x3-x5)*(y2-y5)))/2;
 
s17=fabs(((x2-x1)*(y6-y1)-(x6-x1)*(y2-y1)))/2;
s18=fabs(((x6-x1)*(y3-y1)-(x3-x1)*(y6-y1)))/2;
s19=fabs(((x2-x6)*(y3-y6)-(x3-x6)*(y2-y6)))/2;
 
if ((s11+s12+s13+s14+s15+s16+s17+s18+s19)==s1*3) 
    {s=fabs(s1-s2); printf("%0.2f",s);} else printf("Treugolniki ne vnutri"); }
else  
{
s11=fabs(((x5-x4)*(y1-y4)-(x1-x4)*(y5-y4)))/2;
s12=fabs(((x1-x4)*(y6-y4)-(x6-x4)*(y1-y4)))/2;
s13=fabs(((x5-x1)*(y6-y1)-(x6-x1)*(y5-y1)))/2;
 
s14=fabs(((x5-x4)*(y2-y4)-(x2-x4)*(y5-y4)))/2;
s15=fabs(((x2-x4)*(y6-y4)-(x6-x4)*(y2-y4)))/2;
s16=fabs(((x5-x2)*(y6-y2)-(x6-x2)*(y5-y2)))/2;
 
s17=fabs(((x5-x4)*(y3-y4)-(x3-x4)*(y5-y4)))/2;
s18=fabs(((x3-x4)*(y6-y4)-(x6-x4)*(y3-y4)))/2;
s19=fabs(((x5-x3)*(y6-y3)-(x6-x3)*(y5-y3)))/2;
 
if ((s11+s12+s13+s14+s15+s16+s17+s18+s19)==s2*3)
    {s=fabs(s2-s1); printf("Площадь равна: %0.2f",s);} else printf("Треугольники не внутри");}
  
getch();
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru