![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
art88 |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: ![]() ![]() ![]() |
Задача:
Среди треугольников с вершинами в заданном множестве точек на плоскости указать такой, стороны которого содержат максимальное число точек заданного множества (координаты тоек хранятся в файле). ------------------------------------------------------------------------------------- Решение: см. Triangle.pas ------------------------------------------------------------------------------------- Проблема: Не строится треугольник(проблемы в расчётах). ------------------------------------------------------------------------------------- Просьба: Помогите разобраться!!! ------------------------------------------------------------------------------------- Прикрепленные файлы ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Не строится треугольник(проблемы в расчётах). Ну, так что ты предлагаешь, заняться телепатией? Ты свой файл данных присоедини, мало ли что там у тебя творится... |
art88 |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: ![]() ![]() ![]() |
volvo, извини: совсем запарился
Прикрепленные файлы ![]() |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Ууууу... Ну, ты что-то перемудрил... Сейчас неохота лазить по дебрям кода, у тебя происходит выход за пределы массива (FPC очень хорошо ловит такие вещи)... Вот, глянь на картинку... Как ты думаешь, что произойдет?
![]() Как результат (побочный эффект) - при запуске в TP вот в этом месте: OpenFile(inF); файл inF оказывается закрытым, и соответственно происходит ошибка... |
art88 |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: ![]() ![]() ![]() |
Я упростил программу(см. Triangle.pas), но построить треугольник так и не удалось:
происходит ошибка переполнения. Причём если не заполнять массив(table), содержащий треугольники, то ошибки не происходит и строиться(естественно) треугольник, вырожденный в точку.
Прикрепленные файлы ![]() ![]() |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
art88, проблема тривиальна: у тебя происходят ошибки индексации. Смотри:
var Для того, чтобы избегать такого развития событий - компилируй программу в режиме {$R+} (поставь это самой первой строкой программы), тогда программа не будет "замалчивать" такие ошибки, а будет Run-Time Error, но ты будешь знать: что-то не в порядке... Цитата происходит ошибка переполнения. Попробуй перейти на сопроцессорные типы: {$N+} первой строкой программы, и Real заменить на Double (емкость Double гораздо больше; не поможет Double - пробуй Extended)... |
Pola |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 38 Пол: Женский Репутация: ![]() ![]() ![]() |
Задача: Среди треугольников с вершинами в заданном множестве точек на плоскости указать такой, стороны которого содержат максимальное число точек заданного множества (координаты тоек хранятся в файле). Какая-то странная задача... может точки должны быть внутри треугольника? |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Цитата Какая-то странная задача... Задача как задача. Если точки внутри треугольника - это решается элементарно, есть уже реализованные алгоритмы принадлежности точки многоугольнику. А ты попробуй вот эту задачу решить...Только флейм не надо разводить. Отвечаем по теме... |
Pola |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 38 Пол: Женский Репутация: ![]() ![]() ![]() |
Только флейм не надо разводить. Отвечаем по теме... Не злись, volvo, студенты часто неправильно читают условие задачи... ![]() Проверка принадлежности точки a отрезку bc
и строки Код table[s].a:= p1; table[s].b:= p2; table[s].c:= p3; лучше поставить между Код s:= s + 1; triangles[s]:= c |
Гость |
![]()
Сообщение
#10
|
Гость ![]() |
добавить новый тип
Код type . . . tmass= array[1..numT] of integer; изменить тип переменной Код var . . . Triangles : tmass; изменить процедуру procedure FindMaxTri(var mass: tmass); |
Гость |
![]()
Сообщение
#11
|
Гость ![]() |
изменить способ составления треугольников i,j,k
begin и вообщето еще убедиться, что нет среди этих трех точек p1,p2,p3 точек содинаковыми координатами например так Код if not EqPoints(p1,p2) and not EqPoints(p2,p3) then а также не лежат ли все три на одной прямой... Код if not Includ(p1,p2,p3) and not Includ(p2,p1,p3) and not Includ(p3,p1,p2) then а то и треугольника не будет... |
Pola |
![]()
Сообщение
#12
|
Новичок ![]() Группа: Пользователи Сообщений: 38 Пол: Женский Репутация: ![]() ![]() ![]() |
гостем была я
![]() войти забыла.... ![]() |
Гость |
![]()
Сообщение
#13
|
Гость ![]() |
а кто нить может переделать эту задачку без файлов?, плиз!
|
ghy |
![]()
Сообщение
#14
|
Группа: Пользователи Сообщений: 1 Пол: Женский Репутация: ![]() ![]() ![]() |
да да да! очень прошу. та же задача, но без файла
и воть ещё... точка (x0,y0) лежит между двумя остальными, когда (x1-x0)(x2-x0)<0 и (y1-y0)(y2-y0)<0 Сообщение отредактировано: ghy - 7.01.2010 16:35 |
Lapp |
![]()
Сообщение
#15
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
![]()
Сообщение
#16
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Моцарт - "Реквием"?
![]() -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
![]()
Сообщение
#17
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Моцарт - "Реквием"? Здрасьте вам, пианисты.. Уже Шопена от Моцарта не отличаем?.. ![]() ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
![]()
Сообщение
#18
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
![]() Сообщение отредактировано: Unconnected - 8.01.2010 12:46 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
![]()
Сообщение
#19
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
![]() ![]() Ничего, главное отличать Beatles от Эдиты Пьехи.. )) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lapp |
![]()
Сообщение
#20
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
это был Глюк.. Ах, вооот оно как?..Нееет.. Глюк - это примерно так.. сейчас.. вот: тии.. та-ти-та-та та ти та, тии та ти-та-та та ти та.. тии таа та-та тииии та-тааа.... 2 ghy: извини, но на этом форуме не поощряется встревать в давно мертвые темы. Особенно, если тебе нужно, чтобы тебе сделали изменения в программе. Тебе нужно - ты и делай. Если будет вопрос ПО ПРОГРАММИРОВАНИЮ - мы с удовольствием ответим. Успехов тебе. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 23.06.2025 3:50 |