С клавиатуры вводится строка. Проверьте, может ли эта строка быть записью числа в десятичной системе счисления. Учтите, что число может быть не обязательно целым.
// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
begin
var s:=ReadlnString(>);
var x:=RegEx.Match(s,([+-]?/d+/.?/d*([Ee][+-]?/d+)?)).ToString;
if x.Length=0 then Writeln(Недопустимая запись числа)
else
if s=x then Writeln(Допустимая запись числа)
else Writeln(Частично допустимая запись: ,x)
end.
Тестовые примеры
> .3464
Частично допустимая запись: 3464
> -345.534634E-12
Допустимая запись числа
> +34525352552
Допустимая запись числа
> +066464.33435e+34.4325
Частично допустимая запись: +066464.33435e+34
> 45434534,363
Частично допустимая запись: 45434534
> e342
Частично допустимая запись: 342
> ТутСпрятаноЧисло345.54МыЕгоНайдем!
Частично допустимая запись: 345.54
> А тут числа нет
Недопустимая запись числа
Форма вопроса доступна на