Как стать автором
Обновить

Комментарии 11

Извините, можно узнать, что за обои у вас? Там что-то интересное :)
Мопед не мой — я просто юзал Делфи :)
Думаю, что-то связанное с микроэлектроникой. Если не поменяют, скажу на следующей недели :)
m[n-1] в первой итерации — какое-то совершенно неизвестное и непонятное число, хранившееся в памяти, которую занял массив до выполнения программы. Хотя вообще код — сделайте меня развидеть это :) Может проще в Excel'e (или в Calc'e) посчитать?
Да все правильно, только странно что никто не ругнулся при компиляции, видимо так был настроен компилятор на машине.
Настроен — еще хорошо сказано :)
Ну вообще говоря ошибка чисто ваша, делфи дает возможность контроля и управления выводом ошибок, и бывают случаи когда делфи говорит об ошибках, которые таковыми не являются, вот тогда можно настраивать компилятор. Эх были времена, пока учился часто приходилось писать на делфи.
Ошибки-ошибками, но тут компилятор сначала выполняет конец программы, и только потом — начало!
Что он делает в самом конце, я понять не могу.
Спасибо, замечание понял.
Просто реализовалось все на коленке по только что выведенному на бумаге уравнению.
Ну это не странность Делфи. Странно, что вы обращаетесь к не инициализированному m[0]. А дома вам видимо повезло и в m[0] память была нулями забита.

А делфи при компиляции ругается на выход индекса за пределы массива только для константных индексов.
Еще есть опция Range Checking при которой генерируется дополнительный код для проверки возможного выхода значений переменных за границы диапазона. Программа, откомпилированная с активной опцией, занимает несколько больший объем памяти и исполняется медленнее, зато дает возможность контролировать выход индексов за пределы, определенные в описании массивов. По умолчанию эта опция выключена.
Да, про m[n-1] итерацию писали чуть выше — основную свою ошибку я понял. Как я уже сказал, код писался в спешке и… да, позор, но ошибки не заметил. С остальными машинами тоже повезло (не только домашней).

Смутило меня:
1) правильные значения (правда, последнее не посчитал)
2) непонятное выполнение программы (наоборот)

За опцию Range Checking — отдельное спасибо. Буду в курсе.
НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории