|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.04.2013, 01:31 | #1 |
Пользователь
Регистрация: 23.04.2013
Сообщений: 11
|
Ошибка в Delphi (деление на ноль)
Помогите, пожалуйста, разобраться!
Вылазит вот такая ошибка в выделеной строчке. При том, что нуля в знаменателе просто быть не может. Код:
|
29.04.2013, 07:52 | #2 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
А чего непонятного то?
В выделенной строчке единственная операция деления, значит, именно f[i] и равен нулю. И вместо того, чтобы утверждать "не может" - взять, да и посмотреть. Со своей стороны могу сказать, что чего там не может быть, так это того, что Вы предполагаете там иметь: 1. Нигде не проверяется, что x меньше 4095, следовательно, возможен выход за пределы массива, порча памяти и совершенно непредсказуемое поведение. 2. Факториал от 4096 - слишком много, чтобы получить это число хотя бы в каком-то из стандартных типов. Так что Ваша программа, несомненно, содержит логические ошибки. А какие именно - сказать невозможно, не зная условия задачи. |
29.04.2013, 09:04 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Для Integer 18! уже слишком много и где-то для 34! в массиве f ноль будет после всех переполнений
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Деление на ноль | LLIALLIJIbIK | Общие вопросы Delphi | 19 | 14.04.2013 20:33 |
Деление на ноль | LLIALLIJIbIK | Общие вопросы Delphi | 1 | 14.04.2013 17:15 |
Delphi, ошибка деления на ноль, хотя знаменатель не ноль | Эренка | Помощь студентам | 7 | 22.04.2010 15:56 |
Деление на ноль! | Hacker19_90 | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 01.10.2008 22:59 |