> -- Илья Ермаков писал(а):
> Потому что студент не заморачиваецца и использует массив статического предельного размера (динамически созданный под указанную максимальную степень графа) + его размер рядом. И правильно в данном случае делает.

Да. Может быть и правильно в данном случае. Я говорю с точки зрения читателя без полного понимания контекста. Чем меньший контекст нужен для понимания кода - тем код читабельнее. Но конечно и этот принцип не надо превращать в догму

> -- Илья Ермаков писал(а):
> И будем писать лишнюю строку до цикла и в теле для выборки текущего out? Лишняя контекстность и удлиннение.

Лишняя строка - это не удлинение, если она помогает понять код. Опять же - не понимаю, почему оберонщики так любят лепить кучу операторов (пусть даже связанных) в одну строку. Если нужно выделить логический блок в коде - лучше пустую строку вставить.

> -- Илья Ермаков писал(а):
> Какие проблемы прочитать нормальное логическое выражение - не представляю. Непривычка - только и всего.

Такие обычные чисто человеческие проблемы - надо лишний раз убедиться, что x и y относятся к одной сущности - c0.outs[i]. В такой код легко вкрадываются опечатки типа c1.outs[i].

> -- Илья Ермаков писал(а):
> Это тот случай, когда со студенческой скамьи надо натаскать на мат. логике и выражению мысли с помощью её предикатов. А иначе конечно - проще пытаться шаг за шагом проверять, не пора ли "спрыгнуть с поезда". Только где гарантии, что цепь таких проверок реально соответствует условию окончания итерационного процесса.

А где гарантии, что человек не запутается в таком условии (что и имело место в данном случае)?

> -- Илья Ермаков писал(а):
> Да не поднимайте... Сначала прочтите соглашение "пусть будем обозначать то-то и так-то...", а потом 7-8 строк кода в теле процедуры.

Вот больше запоминать нечего - локальные переменные процедуры (смысл которых все равно не ясен), которые может быть ни разу и не понадобятся при анализе ее кода. Понятно, что при таком подходе и не захочешь лишний раз завести локальную переменную с говорящим именем, а будешь писать вот такой мясной код