И это не говоря уже о том, что конечно же nnosipov прав, что нельзя вот так просто отбросить огромное количество старших цифр, как это сделали вы!
А вот и можно
Вообще, с вычислением последних цифр этой тетрации я, мягко выражаясь, попал впросак. Дело в том, что каждый год я предлагаю своим студентам задачу типа той, что обсуждалась выше: найти последние
цифр степенной башни из
этажей, каждый из которых равен числу
. Некоторые неленивые студенты приносят решение этой задачи, но из-за собственной лени я его не смотрю, а просто проверяю ответ. (В качестве оправдания скажу, что идея решения таких задач очень подробно описана в моей методичке, и я наивно полагал, что добросовестный студент просто запрограммирует соответствующий не слишком сложный алгоритм. Чего тут, собственно, проверять?) Ответ обычно сходится. Все довольны, все хорошо. Но на днях я решил-таки проверить корректность одного такого решения с правильным ответом. Решение сводилось к вычислению следующей рекуррентной последовательности:
Ответом было
. Вот так просто, да (а чего там мудрить, пришпандорим к рекуррентной формуле нужный модуль, и все дела!). Само вычисление на компьютере занимало часы (в отличие от минут при правильном подходе), но это неважно. Самое забавное в том, что ответ правильный! Разумеется, никаких обоснований корректности ответа не было (кроме дежурных слов про теорему Эйлера). По-хорошему, такое решение не стоило бы засчитывать до тех пор, пока не будет предъявлено полное обоснование того, что число
, вычисленное по столь простому рекуррентному правилу, действительно дает то, что требуется найти.
Конечно, все дело в том, что модуль, равный степени десятки, специфичен. В следующем году студентов ждет сюрприз --- степенную башню нужно будет вычислять по случайному модулю (не слишком многозначному, правда). Вот здесь соответствующая последовательность, вычисленная по простому рецепту выше, уже будет давать чушь, а не правильный ответ, почти всегда.
Upd. На самом деле вычисление
занимает десятки минут, а не часы (Maple, i3).