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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2008, 14:46   #1
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию Помогите с геометрической задачкой!

Дан треугольник,дана окружность с центром и радиусом.Определить окружность является вписанной,описанной в этот треугольник или находится за треугольником?
Rid вне форума Ответить с цитированием
Старый 04.12.2008, 18:36   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

треугольник вписан -> вершины лежат на окружности -> проверяем 3 точки на принадлежность окружности (уравнение окружности смотри учебник геометрии)
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 04.12.2008, 21:44   #3
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию

а как быть , если она описанна, то вершины треугольника касаются окружности. И как определить находится она внутри треугольника или за ним.
Rid вне форума Ответить с цитированием
Старый 04.12.2008, 22:24   #4
sverhuVniz
Пользователь
 
Аватар для sverhuVniz
 
Регистрация: 24.10.2008
Сообщений: 32
По умолчанию

видно тебе математика не нравится
r- radiys vpisannoy
R- opisannoy
проверь если
r=(a+b-c)/2 тогда вписанная
esli R=c/2 тогда описанная.
a b c можно найти путём расстояния между 2 точками d:=sqrt(sqr(x1-x2)+sqr(y1-y2))
___________________________________ ____________
ВОН ВЫГНАТЬ ПРОКЛЯТЫХ СПАММЕРОВ!
sverhuVniz вне форума Ответить с цитированием
Старый 05.12.2008, 00:11   #5
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию

Спасибо большое!В школе проспал все уроки геометрии!
Rid вне форума Ответить с цитированием
Старый 05.12.2008, 16:58   #6
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию Где то так,получилось у меня

program treug;
uses crt;
var a,b,c,x0,x1,x2,y0,y1,y2,r,P:real;
begin clrscr;
writeln('Vvedite koordinati storoni a');
readln(x0,x1,y0,y1);
a:=Sqrt(Sqr(x0-x1)+Sqr(y0-y1));
writeln('Vvedite koordinati storoni b');
readln(x1,x2,y1,y2);
b:=Sqrt(Sqr(x1-x2)+Sqr(y1-y2));
writeln('Vvedite koordinati storoni c');
readln(x2,x0,y2,y0);
c:=Sqrt(Sqr(x2-x0)+Sqr(y2-y0));
if (a=b)and(b=c)and(c=a) then writeln('Vse storoni sovpodaut') else begin
if (a+b<=c) or (b+c<=a) or (c+a<=b) then begin
writeln('Vvedite r - radius vpisannoi okrugnosti');readln(r);
writeln('Vvedite P - radius opisannoi okrugnosti');readln(P);
if r=(a+b-c)/2 then writeln('Okrugnost vpisana') else
begin
if P=c/2 then writeln('Okrugnost opisana') else
writeln('Okrugnost za treugol')
end end
else writeln('Treugolnika nesuchestvuet');
end;
readln;
end.
И еще раз спасибо за подсказку!!!
Rid вне форума Ответить с цитированием
Старый 05.12.2008, 18:28   #7
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию Немного исправленная,одна проверка не нужна!

program treug;
uses crt;
var a,b,c,x0,x1,x2,y0,y1,y2,r,P:real;
begin clrscr;
writeln('Vvedite koordinati storoni a');
readln(x0,x1,y0,y1);
a:=Sqrt(Sqr(x0-x1)+Sqr(y0-y1));
writeln('Vvedite koordinati storoni b');
readln(x1,x2,y1,y2);
b:=Sqrt(Sqr(x1-x2)+Sqr(y1-y2));
writeln('Vvedite koordinati storoni c');
readln(x2,x0,y2,y0);
c:=Sqrt(Sqr(x2-x0)+Sqr(y2-y0));
if (a+b<=c) or (b+c<=a) or (c+a<=b) then begin
writeln('Vvedite r - radius vpisannoi okrugnosti');readln(r);
writeln('Vvedite P - radius opisannoi okrugnosti');readln(P);
if r=(a+b-c)/2 then writeln('Okrugnost vpisana') else
begin
if P=c/2 then writeln('Okrugnost opisana') else
writeln('Okrugnost za treugol')
end end
else writeln('Treugolnika nesuchestvuet');
readln;
end.
Rid вне форума Ответить с цитированием
Старый 05.12.2008, 18:36   #8
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Цитата:
Сообщение от Rid Посмотреть сообщение
program treug;
uses crt;
var a,b,c,x0,x1,x2,y0,y1,y2,r,P:real;
begin clrscr;
writeln('Vvedite koordinati storoni a');
readln(x0,x1,y0,y1);
a:=Sqrt(Sqr(x0-x1)+Sqr(y0-y1));
writeln('Vvedite koordinati storoni b');
readln(x1,x2,y1,y2);
b:=Sqrt(Sqr(x1-x2)+Sqr(y1-y2));
writeln('Vvedite koordinati storoni c');
readln(x2,x0,y2,y0);
c:=Sqrt(Sqr(x2-x0)+Sqr(y2-y0));
if (a+b<=c) or (b+c<=a) or (c+a<=b) then begin
writeln('Vvedite r - radius vpisannoi okrugnosti');readln(r);
writeln('Vvedite P - radius opisannoi okrugnosti');readln(P);
if r=(a+b-c)/2 then writeln('Okrugnost vpisana') else
begin
if P=c/2 then writeln('Okrugnost opisana') else
writeln('Okrugnost za treugol')
end end
else writeln('Treugolnika nesuchestvuet');
readln;
end.
Проверка на значение радиуса для вписанной окружности неверна. Представьте что у Вас окружность с центром в точке(0;0), а треугольник где-нибудь во втором квадранте. Даже если будет выполняться соотношение(Радиус вписанной в треугольник окружности равен отношению площади треугольника и его полупериметра), то это будет означать что окружность МОЖЕТ БЫТЬ вписана.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 05.12.2008, 18:39   #9
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Описана ли окружность около треугольника определяется легче
точки a,b,с и centr и radius
Код:
if (sqrt(sqr(a.x-centr.x)+sqr(a.y-centr.y))=radius)and(sqrt(sqr(b.x-centr.x)+sqr(b.y-centr.y))=radius)and(sqrt(sqr(c.x-centr.x)+sqr(c.y-centr.y))=radius) then writeln('OP');
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 05.12.2008, 19:48   #10
Rid
Пользователь
 
Регистрация: 02.12.2008
Сообщений: 35
По умолчанию

угу.Если не трудно покажите более наглядно, как в общем коде будет.Заранее спасибо!!!И как тогда вписанной!!!

Последний раз редактировалось Rid; 05.12.2008 в 19:50.
Rid вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с задачкой zzzzz JavaScript, Ajax 2 21.11.2008 14:17
Програма для вывода геометрической фигуры Hworang Паскаль, Turbo Pascal, PascalABC.NET 8 30.10.2007 19:42
Помогите с задачкой Saniok Помощь студентам 4 29.09.2007 20:34
ПОМОГИТЕ С ЗАДАЧКОЙ!!!! Solny6ko YasnoE Помощь студентам 6 22.06.2007 09:09
Помогите с задачкой Sour Помощь студентам 9 08.05.2007 20:56