IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Задача в паскале.определить входит ли в треугольник с заданными координатами начало координат.
serg
сообщение 23.11.2009 23:58
Сообщение #21


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской

Репутация: -  0  +


Цитата(sheka @ 23.11.2009 23:33) *

Пифагоров забыл! mad.gif
Добавлено через 1 мин.

ну напишите хотябы не через функцию но самостоятельно блин!))

да если бы я сам мог то не писал бы сюда
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
sheka
сообщение 24.11.2009 0:18
Сообщение #22


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Цитата(Unconnected @ 23.11.2009 22:58) *

FATALITY!
А что это значит FATALITY! ?


Цитата
if (chet(koor[1],koor[2])+chet(koor[3],koor[4])+chet(koor[5],koor[6])=5)
or
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.11.2009 4:33
Сообщение #23


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Что-то вы, мне кажется, тут перемудрили..
Простые решения уже не в моде? smile.gif
И тут абсолютно не нужны никакие функции.
const
n=3; {треугольник}
r=9; {диапазон чисел}

var
t: array [1..n] of record
x,y: double;
end;
i: integer;
Inside: boolean;
u,v: double;

begin
Randomize;
for i:=1 to n do with t[i] do begin
x:=Random®*2-r;
y:=Random®*2-r;
WriteLn('x',i,'=',x:2:0,' y',i,'=',y:2:0);
end;
Inside:=true;
for i:=1 to n do begin
v:=t[i].x*t[i mod n+1].y-t[i].y*t[i mod n+1].x;
if i>1 then Inside:=Inside and (u*v>1e-15);
u:=v
end;
WriteLn(Inside)
end.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
serg
сообщение 24.11.2009 10:01
Сообщение #24


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской

Репутация: -  0  +


Цитата(Lapp @ 24.11.2009 4:33) *

Что-то вы, мне кажется, тут перемудрили..
Простые решения уже не в моде? smile.gif
И тут абсолютно не нужны никакие функции.
const
n=3; {треугольник}
r=9; {диапазон чисел}

var
t: array [1..n] of record
x,y: double;
end;
i: integer;
Inside: boolean;
u,v: double;

begin
Randomize;
for i:=1 to n do with t[i] do begin
x:=Random®*2-r;
y:=Random®*2-r;
WriteLn('x',i,'=',x:2:0,' y',i,'=',y:2:0);
end;
Inside:=true;
for i:=1 to n do begin
v:=t[i].x*t[i mod n+1].y-t[i].y*t[i mod n+1].x;
if i>1 then Inside:=Inside and (u*v>1e-15);
u:=v
end;
WriteLn(Inside)
end.



Arifmethic overflow???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.11.2009 11:55
Сообщение #25


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(serg @ 24.11.2009 10:01) *
Arifmethic overflow???

где?



Добавлено через 5 мин.
Попробуй замеить тип double на real
а при проверке сравнивай не с 1e-15, а 1e-7


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.11.2009 12:19
Сообщение #26


Гость






Цитата
где?
Здесь:
Цитата
  for i:=1 to n do with t[i] do begin
x:=Random®*2-r; { <--- }
y:=Random®*2-r; { <--- }
WriteLn('x',i,'=',x:2:0,' y',i,'=',y:2:0);
end;
как минимум. Random вернет значение типа Word, и как только 2*Random( r ) будет меньше, чем R - попытка сделать Word отрицательным приведет к RTE 215 (все вышесказанное относится к Турбо Паскаль 7). Патч:
  for i:=1 to n do with t[i] do begin
x:=Integer(Random®*2)-r; { <--- }
y:=Integer(Random®*2)-r; { <--- }
WriteLn('x',i,'=',x:2:0,' y',i,'=',y:2:0);
end;
, теперь ошибки не будет. Integer вполне способен принимать отрицательные значения.
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.11.2009 12:30
Сообщение #27


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(volvo @ 24.11.2009 12:19) *
Random вернет значение типа Word,
Спасибо, volvo. Постоянно об этом забываю. FPC расслабляет..
+1


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
serg
сообщение 24.11.2009 13:05
Сообщение #28


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской

Репутация: -  0  +


теперь чтото не запускает %) что делать?((
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.11.2009 13:26
Сообщение #29


Гость






Цитата
еперь чтото не запускает %) что делать?((
Что значит "не запускает"? Может, отрабатывает и ты не успевашь результаты посмотреть? Нажми на Alt+F5 тогда, увидишь. Или перед end. добавь ReadLn - программа подождет, пока ты нажмешь на Enter и только потом закроется.
 К началу страницы 
+ Ответить 
serg
сообщение 24.11.2009 19:21
Сообщение #30


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской

Репутация: -  0  +


Цитата(volvo @ 24.11.2009 13:26) *

Что значит "не запускает"? Может, отрабатывает и ты не успевашь результаты посмотреть? Нажми на Alt+F5 тогда, увидишь. Или перед end. добавь ReadLn - программа подождет, пока ты нажмешь на Enter и только потом закроется.

я нажимаю RUN а она просто тупо не начинается
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
serg
сообщение 24.11.2009 19:58
Сообщение #31


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской

Репутация: -  0  +


все щикарно,спасибо огромное вам
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 3.07.2025 16:47
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"