Я бы написал по другому
Program vozvedenie_v_stepen;
var a,b:integer;
begin
writeln ('Введите число, которое будем возводить в степень');
readln (a);
writeln ('Введите число, обозначающее степень, в которую будем возводить');
readln (b);
Writeln (a,' в степени ',b,' = ',exp(b*ln(a)));
end.
Извиняюсь за неправильный ответ. Не увидел, что вам нужно с циклом. Тогда лучше так...
Program vozvedenie_v_stepen;
var a,b,c,d:integer;
begin
writeln ( 'Введите число, которое будем возводить в степень' );
readln (a);
c:=a;
writeln ( 'Введите число, обозначающее степень, в которую будем возводить');
readln (b);
for d:= 2 to b do
a:=a*c;
if b=0 then
writeln(1)
else
writeln (c,' в степени ',b,' = ',a);
end.
Непонятно, что за "надписи".
Предположим, что
1. "бабушка попросила"
2. "взяла лукошко"
3. "подошла к кусту"
4. "сорвала ягоду"
5. "сварили варенье"
тогда логика задачи будет следующей
бабушка попросила
Если Маша согласилась тогда
взяла лукошко
подошла к кусту
Если куст с ягодами Тогда
Пока (на кусте есть ягоды) и (лукошко пустое) Цикл
сорвала ягоду
КонецЦикла
КонецЕсли
сварили варенье
КонецЕсли
В принципе, если несколько кустов, нужен цикл обхода по кустам пока не наполнится лукошко.
a,b,c,d,x1,x2:real;
begin
writeln('Введите коэффициенты');
readln(a,b,c);
d:=b*b-4*a*c;
if d < 0 then writeln ('Нет корней')
else
if d=0 then begin
x1:=-b/(2*a);
writeln('Х= ',x1);
end
else
begin
x1:=(-b-sqrt(d))/(2*a);
x2:=(-b+sqrt(d))/(2*a);
writeln('Х1=',x1,' Х2=',x2);
end;end.