|
Переменные, с которыми приходится иметь дело в простом структурном цикле, распадаются на две совокупности X и Y. В совокупность X входят переменные, которые ведут себя подобно переменным, фигурирующим в итерационных циклах, — они последовательно принимают различные значения, причем при каждом повторении цикла каждой такой переменной присваивается, как правило, новое значение. Среди этих переменных можно выделить одну, последовательные значения которой образуют' целочисленную арифметическую прогрессию. Эта переменпая называется параметром цикла. Чаще всего последовательность значений, принимаемых параметром цикла, — это прогрессия 1, 2, п, где п — число повторений цикла. Если же это не так, то линейной заменой параметра можно свести случай параметра k, пробегающего прогрессию а, а + q, а + (п — 1) q, к параметру г, принимающему последовательно значения 1, 2, п. Поэтому, не теряя в общности, в дальнейшем будем рассматривать лишь последний случай. Переменные совокупности Y образуют одну или несколько групп (массивов), в каждую из которых входит п переменных (иногда п + с, где с — число, не зависящее от п). Пусть уи уп — одна из таких групп. Тогда для хранения значений этих переменных должны быть выделены п ячеек, адреса которых изменяются закономерно в зависимости от индекса / переменной у f. Во всех рассмотренных примерах эта зависимость — линейная: адрес yf равен су + dyj, где су и dy — целочисленные константы, зависящие от рассматриваемой группы переменных yly y2i уп, но не зависящие от /. При каждом повторении цикла над переменными, входящими в совокупности X и Y, выполняются некоторые вычисления, в частности, переход к очередному значению параметра, описываемый присваиванием i : = I +1. Совокупность всех этих вычислений будем обозначать Р (х). Для каждой переменной х из совокупности X при вычислениях Р (I) используется прежнее (оставшееся от вычислений Р (i — 1)) значение этой переменной и вырабатывается новое значение, которое, после того как оно получено, может участвовать при продолжении вычислений Р (I). Что касается группы переменных уи уп из совокупности У, то в вычислениях Р (I) участвует, как правило, переменная yt и, возможно, еще несколько переменных у1+а с близкими к i значениями индекса i + а (а не зависит от /).
|