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

ппапаапа ппапаапа    2   29.06.2019 06:30    12

Ответы
Angelim Angelim  23.07.2020 09:58
Программа в 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.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика