Пусть вводится последовательность символов длиной не более 4. Если
все вводимые символы — цифры, то выполните преобразование данной
последовательности в целое число.
Паскаль.

Программа в PascalABC.Net:
const
  digits=[0,1,2,3,4,5,6,7,8,9];
var
  s:string;
  n,i,err:integer;
  isdigit:boolean;
begin
  Write(Введите натуральное число (1-9999): );
  Read(s);
  i:=1;
  isdigit:=True;
  n:=Length(s);
  repeat
    isdigit:=isdigit and (s[i] in digits);
    Inc(i)
  until (not isdigit) or (i>n);
  if isdigit then
  begin Val(s,n,err); Writeln(Введено корректное число ,n) end
  else Writeln(Число содержит нецифровой символ)
end.

Отметим, что в PascalABC.Net в реальной жизни решение могло бы выглядеть так:
var
  s:string;
  n,err:integer;
begin
  Write(Введите натуральное число (1-9999): );
  Read(s);
  Val(s,n,err);
  if err=0 then Writeln(Введено корректное число ,n)
  else Writeln(Число содержит нецифровой символ)
end.

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку