Крайне часто на глаза стала попадаться именно эта загадка.
Колонка <em>(а собака - болонка)</em>
Var
a:longint;
begin
readln(a);
writeln(a×a×a);
end;
Могу в предложить в данном случае использовать goto и метки. Ну, если вы имеете какой то признак неправильных данных, например, это отрицательные значения (предположим, что это неправильные данные) То на этапе, когда вы вводите эти значения, вы должны поставить условный оператор. Т.е.
if a<0 tnen
begin
Writeln('Вы ввели неверные данные');
goto 1
else
goto 2;
Метку 1 вы ставите в начало алгоритма, т.е. туда, откуда вы хотите начать повторное выполнение программы, а метку 2 поставить в продолжение алгоритма, т.е. на тот случай, если данные были введены верно
//Если нужно будет перевести другую строку в цифры, то не забудь поменять параметр Size. В него нужно будет записать количество символов в строке
Program Test;
const Size = 19;
Var i, tmp: integer; Str, Resultat: string;
Begin
Str := 'yoonmin_in_my_heart';
for i := 1 to Size do
begin
tmp := ord(Str[i]);
Resultat := Resultat + tmp
end;
Writeln(Resultat);
End.