Обратим внимание, что при возведении натурального числа 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
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку