Азбука. Буква Ф. Фортран

image

Я прошел мимо него. К счастью, когда я учился, его преподавать перестали и все перешли на паскаль. Может преподаватели закончились.

Но одна забойная байка про Фортран осталась. Почему для индексов в циклах чаще всего используются буквы от i до n (посмотрите на английский алфавит, как раз всё по порядку.). Почему не сначала – a,b,c. Ведь тоже вариант, почему именно с i. Есть конечно альтернативная версия – потому что это первых две буквы от слова index.

Хотя если посмотреть на все примеры которые использовались для обучения, например для обхода массивов, использовались – для одномерных i, для двухмерных – i,j, для трехмерных i,j,k.

В общем считалось что если использовать эти переменные для индексов то программа на фортране будет исполнятся быстрее. Типа такие циклы компилятор Фортрана как-то оптимизирует. (Хотя какая разница, какой символ использовать.)

Но проверить эту байку мне не удалось.

Tags: ,

Смотрите также:



  • http://www.all-x.net Allex

    Не знаю, как насчет оптимизации, но особые правила типизации для этих имен были: переменные i, j, k по умолчанию считались целочисленными. Могу, конечно, ошибаться — лет 15 прошло :)

  • http://www.mphome.dp.ua mp

    Кстати вполне может так всё и было. :)

  • kkk

    Это все из математики. Откройте учебник математики (мат-ан) за любой год и увидете ваши пресловутые i, j, k….

  • Дмитрий

    Allex написал правильно.
    По умолчанию (и в соответствии с утверждёнными стандартами) переменные в фортране не требуют обязательного объявления — начинающиеся с символов i-n переменные, если не объявлены, считаются переменными целочисленного типа integer.
    Список соответствий первого символа имени и типов можно изменять. Опыт предков, потративших человеко-годы на поиск и исправление глупых ошибок (связанных с опечатками в именах переменных, которые ‘объявились’ автоматически) учит, что такой подход следует запрещать с помощью ‘implicit none’. На оптимизацию это, разумеется, не влияет совершенно.

    К сожалению, молодёжь зачастую не осознаёт, насколько вредна возможность не объявлять переменные явно.