Вопрос № 117285: Здравствуйте уважаемые эксперты!
Скажите пожалуйста почему при запуске программ на PAscale появляется ошибка: Error 200 Division by zero. ? Причем не зависимо от сложности программ! Помогите избавиться от нее! чего не хватает в паскале, что он вы...Вопрос № 117341: Здравствуйте уважаемые эксперты! Помогите написать программу, которая создает типизированный файл, в котором будут находиться записи (содержит поля-фамилия, имя, отчество, год рождения). Нужно осуществить добавление, изменение, поиск
и удаление запис...
Вопрос № 117.285
Здравствуйте уважаемые эксперты!
Скажите пожалуйста почему при запуске программ на PAscale появляется ошибка: Error 200 Division by zero. ? Причем не зависимо от сложности программ! Помогите избавиться от нее! чего не хватает в паскале, что он выдает такую ошибку!
Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Ромашка Сергеевич!
Это связано с тем, что новые компьютеры более мощные и старый паскаль на них не рассчитан (я так понимаю, у Вам Borland Pascal 7.0).
Необходимо поправить модуль CRT (заменить на исправленные файлы turbo.tpl и tpp.tpl).
В приложенном архиве все подробно описано и приложены нужные файлы.
Удачи!
Прикреплённый файл: Загрузить >> Срок хранения файла на сервере RusFAQ.ru составляет 30 суток с момента отправки ответа.
Ответ отправил: Николай Владимирович / Н.В. (статус: Практикант)
Ответ отправлен: 07.01.2008, 00:36 Оценка за ответ: 5 Комментарий оценки: Правильно у меня сельмой паскаль! Спасибо за помощь!!!!!!!!! Этого я даже и не знал! т.к. у знакомых комп такой же но идет все нормально! еще раз спасибо!
Отвечает: Denisss
Здравствуйте, Ромашка Сергеевич!
Краткая предыстория
Все программы, компилированные в среде Borland Pascal 7, использующие модуль Crt (а ведь почти все программы его используют), вызывают ошибку "Runtime Error 200" на всех быстрых ПК, таких как, например, Pentium II с частотой 233 МГц. Borland (также известные как Inprise) не предлагают
никаких решений данной проблемы (позор им!). Вместо этого, служба поддержки разработчиков Pascal (Pascal Developer Support) рекомендует воспользоваться поиском Altavista.
Причина
Ошибка заложена в инициализации процедуры delay (задержка), являющейся частью инициализации модуля Crt. Данная инициализация вызывается в
каждой программе, использующей модуль Crt, даже если процедура delay в программе не используется. Модуль Crt включен в большинство программ, написанных в среде Borland Pascal. В инициализации процедуры delay подсчитывается сколько раз нужно выполнить ничего не делающий цикл, чтобы вызвать задержку в 55 миллисекунд (время определяется с помощью счетчика времени BIOS по адресу памяти 40:6C, который срабатывает 18,2 раза в секунду, т.е. каждые 55 мс). Затем полученное число делится на 55, чтобы определить
количество вызовов для одной миллисекунды. Результат записывается в переменную типа word (16 бит). Переполнение этой переменной вызывает ошибку выполнения (Ошибка выполнения 200 - это деление на ноль, но в данном случае она вызывается переполнением).
Пути решения
Рекомендованные пути:
У Вас есть только откомпилированный EXE файл, но нет исходных файлов:
Попросить кого-то, у кого есть исходные файлы
TpPatch - Специальный "патч" (подходит только для программ, не требующих работы со временем)
Примечание: Если у Вас компилятор версии 7.0, то очень рекомендуется приобрести более новую версию - 7.01, имеющую достаточно много исправлений. Источник
PS Я бы рекомендовал Вам использовать развивающийся проект - Free Pascal - вместо Borland Pascal.
Удачи! --------- Будь осторожен, когда молишься ради чего-то, потому что можешь это получить...
Ответ отправил: Denisss (статус: Профессионал) Россия, Москва ---- Ответ отправлен: 07.01.2008, 13:39 Оценка за ответ: 5 Комментарий оценки: Спасибо! Испробуем прогрммки
Вопрос № 117.341
Здравствуйте уважаемые эксперты! Помогите написать программу, которая создает типизированный файл, в котором будут находиться записи (содержит поля-фамилия, имя, отчество, год рождения). Нужно осуществить добавление, изменение, поиск и удаление записей. Заранее спасибо!
Отправлен: 07.01.2008, 14:28
Вопрос задал: Orz (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 13)
Отвечает: Delph !!! Здравствуйте, Orz!
В приклеплённом файле архив моей давней программы, решающей весьма похожую задачу. Откомпилируйте сначала f_anti.pas, затем kursov1.pas, и после этого можно запускать steller.pas. Желаю успехов!
--------- Сомневайся во всём! Реальность часто бывает не такой, как мы о ней думаем.
Ответ отправил: Delph (статус: Студент)
Ответ отправлен: 09.01.2008, 16:00 Оценка за ответ: 5 Комментарий оценки: Спасибо
Отвечает: Boriss
Здравствуйте, Orz! Delph просил прикрепить к его ответу файл Steller.zip, но, оказывается, редактируя его ответ, это невозможно. Вот файл от Delph
Прикреплённый файл: Загрузить >> Срок хранения файла на сервере RusFAQ.ru составляет 30 суток с момента отправки ответа. --------- Вывод - то место в тексте, где вы устали думать
Ответ отправил: Boriss (статус: Профессор) Россия, Саранск Организация: Мордовский госуниверситет, Саранск Факультет Электронной Техники WWW:Программирование на Паскале ---- Ответ отправлен: 09.01.2008, 17:57 Оценка за ответ: 5