57 в восьмеричной системе - это в нашей 10-ричной 47. 2014 в шестнадцатеричной - это в нашей 8212. Составить алгоритм по нахождению последней цифры при возведении а в степень b не сложно: var i,a,b,p:word; {диапазон целых чисел 0..65535} Begin readln(a,b);p:=a mod 10; {первая степень числа а} for i:=2 to b do {если степень больше 1, то в цикле начинаем домножать, пока № витка цикла не дойдет до b } begin p:=p*a; {домножаем результат на последнюю цифру числа а} p:=p mod 10; {отделяем последнюю цифру результата} end; writeln(p); {по окончании цикла в р находится результат задачи} end. В результате вводимых данных (47 и 8212) получаем 1. Думаю, что и в 16-ричной будет тоже 1.
2014 в шестнадцатеричной - это в нашей 8212.
Составить алгоритм по нахождению последней цифры при возведении а в степень b не сложно:
var
i,a,b,p:word; {диапазон целых чисел 0..65535}
Begin
readln(a,b);p:=a mod 10; {первая степень числа а}
for i:=2 to b do {если степень больше 1, то в цикле начинаем домножать, пока № витка цикла не дойдет до b }
begin
p:=p*a; {домножаем результат на последнюю цифру числа а}
p:=p mod 10; {отделяем последнюю цифру результата}
end;
writeln(p); {по окончании цикла в р находится результат задачи}
end.
В результате вводимых данных (47 и 8212) получаем 1. Думаю, что и в 16-ричной будет тоже 1.
a:=a*a; //4-я
2) a:=a*a; //2-я
b:=a*a; //4-я
a:=a*b; //6-я
3) b:=a*a; //2-я
c:=b*b; //4-я
b:=c*b; //6-я
a:=a*b; //7-я
4) a:=a*a; //2-я степень
a:=a*a; //4-я
a:=a*a; //8-я
5) b:=a*a; //2-я степень
b:=b*b; //4-я
b:=b*b; //8-я
a:=a*b; //9
6) b:=a*a; //2-я степень
a:=b*b; //4-я
a:=a*a; //8-я
a:=a*b; //10
7) b:=a*a; //2-я степень
c:=b*b; //4-я
d:=c*c; //8-я
c:=d*b; //12
a:=a*c; //13
8) b:=a*a; //2
c:=b*a; //3
d:=c*c; //6
e:=d*d; //12
a:=c*e; //15
9) b:=a*a; //2
c:=b*b; //4
d:=c*c; //8
e:=d*d; //16
b:=e*c; //20
a:=b*a; //21
10) b:=a*a; //2
c:=b*b; //4
d:=c*c; //8
e:=d*d; //16
b:=e*d; //24
a:=b*c; //28
11) a:=a*a; //2
a:=a*a; //4
a:=a*a; //8
a:=a*a; //16
a:=a*a; //32
a:=a*a; //64