Обратим внимание, что при возведении натурального числа
a в натуральную степень
n последняя цифра результата определяется, как значение последней цифры
d числа
a, возведенного в степень
n Поскольку операция возведения в степень
n сводится к умножению
n раз числа самого на себя, то получая при очередном умножении многоразрядное число, мы можем снова принимать в расчет только его младшую цифру.Это позволяет построить цикл на
n умножений, каждый раз получая младшую цифру при помощи операции
mod.var a:longint; n,d,i,p:integer;begin Write('Введите натуральное число a: '); Read(a); Write('Введите натуральную степень n: '); Read(n); a:=a mod 10; p:=a; for i:=2 to n do begin a:=a*p; a:=a mod 10 end; Writeln('Последняя цифра равна ',a)end.
Тестовое решение:Введите натуральное число a: 154Введите натуральную степень n: 9Последняя цифра равна 4