Форумчанин Паскаля
 Аватар для code-n'-help
77 / 90 / 55
Регистрация: 08.11.2013
Сообщений: 399
Записей в блоге: 2
1

Даны координаты вершин треугольника, найти центр вписанной окружности

04.07.2014, 14:23. Показов 12261. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны координаты вершым треугольника нужен код нахождения в координатах центра вписанной в него окружности. С меня шоколадка)
1
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.07.2014, 14:23
Ответы с готовыми решениями:

Найти площадь треугольника, радиус вписанной и описанной окружности
дан обычный треугольник

Даны координаты вершин треугольника: (ax;ay), (bx;by), (cx;cy). Определить лежит ли данный треугольник внутри окружности радиуса R
Помогите с задачей. Даны координаты вершин треугольника: (ax;ay), (bx;by), (cx;cy). Определить лежит ли данный треугольник внутри...

С помощью процедуры найти периметр треугольника, если даны координаты вершин
Описать процедуру Leng(xA, yA, xB, yB) вещественного типа, находящую длину отрезка AB на плоскости по координатам его концов (xA, yA,...

7
Почетный модератор
 Аватар для Puporev
64306 / 47603 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
04.07.2014, 15:00 2
Pascal
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
48
49
50
51
52
53
54
uses crt;
function dlina(ax,ay,bx,by:real):real;//определение длин сторон
begin
dlina:=sqrt(sqr(ax-bx)+sqr(ay-by))
end;
var ax,ay,bx,by,cx,cy,a,b,c,k,x1,y1,x2,y2,xc,yc,k1,b1,k2,b2:real;
begin
repeat
writeln('Введите координаты вершин треугольника');
writeln('Вершина А');
readln(ax,ay);
writeln('Вершина B');
readln(bx,by);
writeln('Вершина C');
readln(cx,cy);
if (ax-cx)*(by-cy)-(bx-cx)*(ay-cy)=0 then
 writeln('Треугольник вырожденный, повторите ввод')
until (ax-cx)*(by-cy)-(bx-cx)*(ay-cy)<>0;
a:=dlina(bx,by,cx,cy);
b:=dlina(ax,ay,cx,cy);
c:=dlina(ax,ay,bx,by);
//найдем координаты концов 2х биссектрис
k:=c/a; //коэффициент пропорциональности
x1:=(cx+k*bx)/(1+k);
y1:=(cy+k*by)/(1+k);
k:=b/a;
x2:=(cx+k*ax)/(1+k);
y2:=(cy+k*ay)/(1+k);
//найдем координаты пересечения биссектрис=координаты центра окружности
if ax=x1 then  //если вдруг первая биссектриса вертикально
 begin
  xc:=x1;//х известен
  k2:=(y2-by)/(x2-bx);//находим коэффициенты второго уравнения
  b2:=(x2*by-bx*y2)/(x2-bx);
  yc:=k2*xc+b2;//координату У
 end
else if x2=x2 then //или вторая
 begin
  xc:=bx;
  k1:=(y1-ay)/(x1-ax);
  b1:=(x1*ay-ax*y1)/(x1-ax);
  yc:=k1*xc+b1;
 end
else //если обе не вертикальные
 begin
  k1:=(y1-ay)/(x1-ax); //коэффициенты 1 уравнения
  b1:=(x1*ay-ax*y1)/(x1-ax);
  k2:=(y2-by)/(x2-bx);//второго
  b2:=(x2*by-bx*y2)/(x2-bx);
  xc:=(b1-b2)/(k2-k1); //координаты центра
  yc:=(k2*b1-k1*b2)/(k2-k1);
 end;
writeln('Координаты центра вписанной окружности X=',xc:0:2,'  Y=',yc:0:2);
end.
1
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
04.07.2014, 15:04 3
code-n'-help, если так важно, то чего поиском не пользуетесь?!

ссылка: https://www.cyberforum.ru/post5682747.html
1
Почетный модератор
 Аватар для Puporev
64306 / 47603 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
04.07.2014, 15:06 4
Я вырезал из той программы лишнее, а то все спишет, потом моргать будет...
0
Форумчанин Паскаля
 Аватар для code-n'-help
77 / 90 / 55
Регистрация: 08.11.2013
Сообщений: 399
Записей в блоге: 2
04.07.2014, 15:19  [ТС] 5
я не нашёл именно по такому названию темы
0
Почетный модератор
 Аватар для Puporev
64306 / 47603 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
04.07.2014, 15:25 6
Просто тот код ищет еще площадь треугольника, его углы и названа тема в более общем виде. Я бы тоже вряд ли бы нашел, просто у меня есть этот код.
0
Форумчанин Паскаля
 Аватар для code-n'-help
77 / 90 / 55
Регистрация: 08.11.2013
Сообщений: 399
Записей в блоге: 2
04.07.2014, 15:28  [ТС] 7
Выдал не правильный ответ
на тест
0 0
3 0
0 4
выдал 6 и 3 или както так
А нужно 1 1 ну вот условие

Добавлено через 23 секунды
Огород у Петра Васильевича имеет форму треугольника и при этом не огорожен. Петр Васильевич хочет привязать козла к колышку в огороде так, чтобы он мог пастись на участке огорода максимальной площади, но при этом не заходил бы на участки соседей. Определите, в каком месте огорода нужно привязать козла.

Вхідні дані:
Программа получает на вход координаты вершин трех углов огорода. Координаты – пара целых чисел, не превосходящих 104 по модулю.

Вихідні дані:
Выведите два числа – координаты колышка, к которому нужно привязать козла, с точностью не менее 6 знаков после запятой.

Приклади

Вхідні дані розміщені у файлі goat4.in Результат роботи знаходиться у файлі goat4.out
0 0
3 0
0 4
1.0 1.0
0
Почетный модератор
 Аватар для Puporev
64306 / 47603 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
04.07.2014, 16:47 8
Лучший ответ Сообщение было отмечено OwenGlendower как решение

Решение

Да, где-то косяк в программе, нужно искать и исправлять, давай твори.

Добавлено через 30 минут
Лень искать ошибку, вот из другой программы, вроде все так же, но считает правильно.
Pascal
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
48
49
50
uses crt;
var x1,y1,x2,y2,x3,y3:integer;
    a,b,c,k,x11,y11,x12,y12,k1,b1,k2,b2,xc,yc:real;
begin
{вводим координаты с проверкой}
writeln('Введите координаты 1 точки:');
readln(x1,y1);
writeln('Введите координаты 2 точки:');
readln(x2,y2);
writeln('Введите координаты 3 точки:');
readln(x3,y3);
//найдем точки пересечения 2х биссектрис со сторонами
//1. найдем длины  сторон
a:=sqrt(sqr(x1-x2)+sqr(y1-y2));
b:=sqrt(sqr(x2-x3)+sqr(y2-y3));
c:=sqrt(sqr(x1-x3)+sqr(y1-y3));
writeln('a=',a:0:1,' b=',b:0:1,' c=',c:0:1);
//2. найдем координаты концов 2х биссектрис
k:=c/a; //коэффициент пропорциональности
x11:=(x3+k*x2)/(1+k);
y11:=(y3+k*y2)/(1+k);
k:=b/a;
x12:=(x3+k*x1)/(1+k);
y12:=(y3+k*y1)/(1+k);
//найдем координаты пересечения биссектрис=координаты центра окружности
if x1=x11 then  //если вдруг первая биссектриса вертикально
 begin
  xc:=x1;//х известен
  k2:=(y12-y2)/(x12-x2);//находим коэффициенты второго уравнения
  b2:=(x12*y2-x2*y12)/(x12-x2);
  yc:=k2*xc+b2;//координату У
 end
else if x2=x12 then //или вторая
 begin
  xc:=x2;
  k1:=(y11-y1)/(x11-x1);
  b1:=(x11*y1-x1*y11)/(x11-x1);
  yc:=k1*xc+b1;
 end
else //если обе не вертикальные
 begin
  k1:=(y11-y1)/(x11-x1); //коэффициенты 1 уравнения
  b1:=(x11*y1-x1*y11)/(x11-x1);
  k2:=(y12-y2)/(x12-x2);//второго
  b2:=(x12*y2-x2*y12)/(x12-x2);
  xc:=(b1-b2)/(k2-k1); //координаты центра
  yc:=(k2*b1-k1*b2)/(k2-k1);
 end;
writeln('Координаты центра вписанной окружности X=',xc:0:2,'  Y=',yc:0:2)
end.
Добавлено через 44 минуты
Нашел ошибку в первом коде, в строке 37 нужно писать
Pascal
1
else if bx=x2 then //èëè âòîðàÿ
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.07.2014, 16:47
Помогаю со студенческими работами здесь

Даны координаты трех вершин некоторого треугольника. Найти его площадь и периметр.
привет! люди добрые помогите незнающему информатику человеку получить зачет! =&quot;(( оч оч нада это решить: 1. Даны координаты...

Даны координаты вершин треугольника и точки. Определить, является ли точка внутренней точкой треугольника
условие - даны координаты вершин треугольника абс и даны координаты точки Д определить является ли точка д внутренней точкой треугольника! ...

Вычислить периметр треугольника, если даны координаты 3 вершин
Здравствуйте, помогите составить программы 3-х задач. Задача1: Вычислить периметр треугольника если даны координаты 3 вершин(ввод с...

Даны координаты вершин треугольника(x1,y1), (x2,y2) … Найти площадь треугольника
1)Даны координаты вершин треугольника(x1,y1), (x2,y2) … Найти площадь треугольника

Найти второй катет и радиус вписанной окружности прямоугольного треугольника
Даны гипотенуза и катет прямоугольного треугольника. Найти второй катет, радиус вписанной окружности по формуле: r=\frac{a+b-c}{2},...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Простая нейросеть на КуМир: Создание и обучение
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
Исполнитель Водолей в КуМир: Решение задач
EggHead 16.03.2025
Разработка алгоритмического мышления — одна из ключевых задач для начинающих программистов, и система КуМир предлагает отличный способ погрузиться в этот процесс. Среди множества исполнителей в этой. . .
Исполнитель Чертежник в КуМир: Решение задач
EggHead 16.03.2025
Представьте, что вы можете рисовать на бесконечной координатной плоскости, перемещая точку, которая оставляет след. По вашей команде она может поднять перо и двигаться, не оставляя следа, или. . .
Исполнитель Робот в КуМир: Решение задач
EggHead 16.03.2025
КуМир (Комплект Учебных МИРов) — это учебная среда программирования, разработанная специально для обучения базовым концепциям алгоритмизации. Её главная фишка — использование русскоязычного. . .
Исполнитель Черепаха в КуМир: Решение задач
EggHead 16.03.2025
Представьте, что вы впервые учитесь программировать, а перед вами стоит задача заставить маленькую виртуальную черепашку рисовать на экране. Звучит забавно? Эта идея зародилась ещё в 1967 году, когда. . .
Конвейеры данных с Apache Kafka
Javaican 16.03.2025
В мире, где данные стали новой нефтью, Apache Kafka зарекомендовал себя как мощный инструмент для построения надежных и масштабируемых конвейеров данных. Созданный изначально командой LinkedIn в 2011. . .
Deno против Node.js: Будущее JavaScript рантайма
run.dev 16.03.2025
За последнее десятилетие Node. js стал абсолютным лидером среди JavaScript-рантаймов и фактическим стандартом для серверной разработки на JavaScript. Но в 2018 году тот же разработчик, который создал. . .
SwiftUI или UIKit - что выбрать для нового приложения iOS?
mobDevWorks 16.03.2025
Когда Apple представила SwiftUI на WWDC 2019, многим показалось, что дни UIKit сочтены. Новый декларативный фреймворк предлагал радикально иной подход к разработке интерфейсов. Вместо кропотливого. . .
Docker: Руководство для начинающих по созданию первого приложения
Mr. Docker 16.03.2025
Docker — это платформа, которая упаковывает ваше приложение и все его зависимости в стандартизированные блоки, называемые контейнерами. Эти контейнеры изолированы друг от друга и от основной системы,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru