begin step :=


begin step := 0; Move (k, 'Left ', 'Right ', 'Middle') end; {Hanoi} BEGIN WriteLn ('{N=', N, '}'); Hanoi (N); END. Упражнение #2. Напишите нерекурсивный вариант процедуры Hanoi. Небольшая подсказка: обратите внимание на очередность смены рабочего стержня при увеличении номера итерации. Выполнив это упражнение, вы убедитесь в том, что приведенный в тексте рекурсивный вариант явно короче (да и понятней), чем неитерационный аналог. Результаты работы программы при последовательных значениях N = 1, 2, 3, 4 мы свели в таблицу, несколько сократив выходной протокол, чтобы не загромождать ее: N=1 N=2 N=3 N=4 #1: L => R (1) #1: L => M (1) #2: L => R (2) #1: M => R (3) #1: L => R (1) #2: L => M (2) #1: R => M (3) #3: L => R (4) #1: M => L (5) #2: M => R (6) #1: L => R (7) #1: L => M (1) #2: L => R (2) #1: M => R (3) #3: L => M (4) #1: R => L (5) #2: R => M (6) #1: L => M (7) #4: L =>
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz