Предмет: Информатика,
автор: Птичка95
Написать программу, которая проверяет, является ли введенная с клавиатуры строка целым числом
Ответы
Автор ответа:
0
VAR
s: String;
i: LongInt;
BEGIN
Read(s);
for i := 1 to Length(s) do
if not((Ord(s[i]) > 47)and(Ord(s[i]) < 58)) then begin
Write(s,' - не является целым число'); Exit;
end;
Write(s,' - целое число');
END.
s: String;
i: LongInt;
BEGIN
Read(s);
for i := 1 to Length(s) do
if not((Ord(s[i]) > 47)and(Ord(s[i]) < 58)) then begin
Write(s,' - не является целым число'); Exit;
end;
Write(s,' - целое число');
END.
Автор ответа:
0
решение офигенное, вытащил целое значение и все, вот только никак не въеду нафига 47 и 58... это что?
Автор ответа:
0
Ord() - функция которая возвращает код символа. Код "0" = 48, код "1" = 49, ... , код "9" = 57. Если строка является целым числом, то в ней встречаются только цифры (коды от 48 до 57).
Похожие вопросы
Предмет: Алгебра,
автор: sasazvezdnaa
Предмет: Алгебра,
автор: vladyyo
Предмет: Химия,
автор: iillaayy12
Предмет: Математика,
автор: STUDEM