Трегольник, стороны которого содержат максимальное... |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Трегольник, стороны которого содержат максимальное... |
art88 |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: 0 |
Задача:
Среди треугольников с вершинами в заданном множестве точек на плоскости указать такой, стороны которого содержат максимальное число точек заданного множества (координаты тоек хранятся в файле). ------------------------------------------------------------------------------------- Решение: см. Triangle.pas ------------------------------------------------------------------------------------- Проблема: Не строится треугольник(проблемы в расчётах). ------------------------------------------------------------------------------------- Просьба: Помогите разобраться!!! ------------------------------------------------------------------------------------- Прикрепленные файлы Triangle.PAS ( 5.86 килобайт ) Кол-во скачиваний: 341 |
volvo |
Сообщение
#2
|
Гость |
Цитата Не строится треугольник(проблемы в расчётах). Ну, так что ты предлагаешь, заняться телепатией? Ты свой файл данных присоедини, мало ли что там у тебя творится... |
art88 |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: 0 |
volvo, извини: совсем запарился
Прикрепленные файлы F.TXT ( 87 байт ) Кол-во скачиваний: 286 |
volvo |
Сообщение
#4
|
Гость |
Ууууу... Ну, ты что-то перемудрил... Сейчас неохота лазить по дебрям кода, у тебя происходит выход за пределы массива (FPC очень хорошо ловит такие вещи)... Вот, глянь на картинку... Как ты думаешь, что произойдет?
Как результат (побочный эффект) - при запуске в TP вот в этом месте: OpenFile(inF); файл inF оказывается закрытым, и соответственно происходит ошибка... |
art88 |
Сообщение
#5
|
Новичок Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: 0 |
Я упростил программу(см. Triangle.pas), но построить треугольник так и не удалось:
происходит ошибка переполнения. Причём если не заполнять массив(table), содержащий треугольники, то ошибки не происходит и строиться(естественно) треугольник, вырожденный в точку.
Прикрепленные файлы TRIANGLE.PAS ( 3.5 килобайт ) Кол-во скачиваний: 324 f.txt ( 31 байт ) Кол-во скачиваний: 283 |
volvo |
Сообщение
#6
|
Гость |
art88, проблема тривиальна: у тебя происходят ошибки индексации. Смотри:
var Для того, чтобы избегать такого развития событий - компилируй программу в режиме {$R+} (поставь это самой первой строкой программы), тогда программа не будет "замалчивать" такие ошибки, а будет Run-Time Error, но ты будешь знать: что-то не в порядке... Цитата происходит ошибка переполнения. Попробуй перейти на сопроцессорные типы: {$N+} первой строкой программы, и Real заменить на Double (емкость Double гораздо больше; не поможет Double - пробуй Extended)... |
Pola |
Сообщение
#7
|
Новичок Группа: Пользователи Сообщений: 38 Пол: Женский Репутация: 0 |
Задача: Среди треугольников с вершинами в заданном множестве точек на плоскости указать такой, стороны которого содержат максимальное число точек заданного множества (координаты тоек хранятся в файле). Какая-то странная задача... может точки должны быть внутри треугольника? |
volvo |
Сообщение
#8
|
Гость |
Цитата Какая-то странная задача... Задача как задача. Если точки внутри треугольника - это решается элементарно, есть уже реализованные алгоритмы принадлежности точки многоугольнику. А ты попробуй вот эту задачу решить...Только флейм не надо разводить. Отвечаем по теме... |
Pola |
Сообщение
#9
|
Новичок Группа: Пользователи Сообщений: 38 Пол: Женский Репутация: 0 |
Только флейм не надо разводить. Отвечаем по теме... Не злись, 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 Пол: Женский Репутация: 0 |
гостем была я
войти забыла.... |
Гость |
Сообщение
#13
|
Гость |
а кто нить может переделать эту задачку без файлов?, плиз!
|
ghy |
Сообщение
#14
|
Группа: Пользователи Сообщений: 1 Пол: Женский Репутация: 0 |
да да да! очень прошу. та же задача, но без файла
и воть ещё... точка (x0,y0) лежит между двумя остальными, когда (x1-x0)(x2-x0)<0 и (y1-y0)(y2-y0)<0 Сообщение отредактировано: ghy - |
Lapp |
Сообщение
#15
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
Сообщение
#16
|
mea culpa Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: 24 |
Моцарт - "Реквием"?
-------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
Сообщение
#17
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Моцарт - "Реквием"? Здрасьте вам, пианисты.. Уже Шопена от Моцарта не отличаем?.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Unconnected |
Сообщение
#18
|
mea culpa Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: 24 |
Видимо, это был Глюк..
Сообщение отредактировано: Unconnected - -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lapp |
Сообщение
#19
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Видимо, это был глюк.. Чаще слушать советовать не буду Ничего, главное отличать Beatles от Эдиты Пьехи.. )) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lapp |
Сообщение
#20
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
это был Глюк.. Ах, вооот оно как?..Нееет.. Глюк - это примерно так.. сейчас.. вот: тии.. та-ти-та-та та ти та, тии та ти-та-та та ти та.. тии таа та-та тииии та-тааа.... 2 ghy: извини, но на этом форуме не поощряется встревать в давно мертвые темы. Особенно, если тебе нужно, чтобы тебе сделали изменения в программе. Тебе нужно - ты и делай. Если будет вопрос ПО ПРОГРАММИРОВАНИЮ - мы с удовольствием ответим. Успехов тебе. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Текстовая версия | 11.01.2025 5:31 |