Re: Спаситеее. Генератор случайных чисел
Добавлено: 26 мар 2007, 14:10
Странно, неужели они логику одного из фундаментальных операторов поменяли?
Что-то припоминается мне из теории Паскаля, что про счетчик цикла for по выходе из цикла говорится, что его значение никак не гарантировано. Т.е. при программировании не следует делать никаких допущений о значении этой переменной.Хыиуду писал(а):Странно, неужели они логику одного из фундаментальных операторов поменяли?
Код: Выделить всё
i:=startvalue-1;
lab1: i:=i+1;
if i>endvalue then goto lab2;
{выполнение команд цикла}
goto lab1;
lab2: {идти дальше по программе}
Снова. Насколько я помню, это (значение счетчика цикла по его выходу) никем не гаратировано. То, что в какой-то реализации какого-то языка получается такой результат, не гарантирует, что вдругой реализации даже этого де языка результат будет такой же. Пожалуй, это можно назвать "недокументированной особенностью". А, как известно, полагаться на недокументированные штучки - это риск.Хыиуду писал(а):Мне припоминалось, что при выходе из цикла for значение индекса равно последнему значению плюс один. Потому что цикл, если не ошибаюсь, ассемблерно реализован примерно так (в переводе опять же на Паскаль):Код: Выделить всё
i:=startvalue-1; lab1: i:=i+1; if i>endvalue then goto lab2; {выполнение команд цикла} goto lab1; lab2: {идти дальше по программе}