18.2.3
Shchukoprogram nl_18_2_3; //Задаём имя программы
const c=4; //Объявляем константы
var a,b,n,k:int64; i:integer; //Объявляем переменные целого типа
begin //Начало тела программы
a:=4; //Присваиваем переменной проверки условия значение 4
k:=1; //Присваиваем переменной результата значение 1
i:=0; //Присваиваем показателю степени значение 1
writeln('Введите n: '); //Выводим сообщение для пользователя
readln(n); //Считываем число
if (n<4)and(n>1) then a:=1 //Проверка на нулевую степень
else begin //В противном случае
repeat //Начало тела цикла с постусловием
a:=a*c; //Возводим в степень i+1 переменную проверки условия
k:=k*c; //Возводим в степень i переменную результата
i:=i+1; //Увеличиваем показатель степени на 1
until a>=n; //Условие выхода из цикла: a>=n;
end; //Завершаем ветвление программы
//Выводим результат с проверкой правильности ввода:
if n<=1 then writeln('Введено слишком маленькое или ненатуральное число') else
writeln('Число 4 в степени ', i, ' равняется ', k, ' и меньше ', n);
end. //Конец тела программы