Дана строка. Если она представляет собой запись целого числа, то вывести 1, если...

0 голосов
305 просмотров
Дана строка.
Если она представляет собой запись целого числа, то вывести 1, если
вещественного (с дробной частью) — вывести 2; если строку нельзя
преобразовать в число, то вывести 0. Считать, что дробная
часть вещественного числа отделяется от его целой части десятичной точкой «.».

Информатика (16 баллов)
Дан 1 ответ
0 голосов
Супер бакалавр (16.9k баллов)
var
  s: string;
  t: integer;
  t1: real;

begin
  readln(s);
  if not (Integer.TryParse(s, t)) then
    if not (Real.TryParse(s, t1)) then
      t := 0
    else
      t := 2
  else
    t := 1;
  writeln(t);
end.
оставил комментарий (16 баллов)

либо я дурак,либо не работает)

оставил комментарий Супер бакалавр (16.9k баллов)

Работает... На какой строке ошибка?

оставил комментарий (16 баллов)

if not (Integer.TryParse(s, t)) then

...