Написать программу, которая проверяет, является ли введённая с клавиатуры строка шестнадцатеричным числом. В Паскале.
Написать программу, которая проверяет, является ли введённая с
клавиатуры строка шестнадцатеричным числом. В Паскале.
Ответ(ы) на вопрос:
Решение в приложении!!
----------
Пробный запуск №1:
Введите строку:
A1015BFZ
Введенная строка не является шеснадцатиричным числом.
Пробный запуск №2:
Введите строку:
58bfa
Введенная строка является шеснадцатиричным числом.
Не понравилась реализация, переделал, специально сохранив основу предыдущего решения.
const
legal = ['0'..'9', 'A'..'F', 'a'..'f'];
var
s: string;
i: integer;
IsHex: Boolean;
begin
writeln('Введите строку: ');
readln(s);
i := 1;
IsHex := True;
while (i <= length(s)) and IsHex do
begin
if not (s[i] in legal) then IsHex := False;
i := i + 1
end;
if isHex then
writeln('Введенная строка является шестнадцатиричным числом.')
else
writeln('Введенная строка не является шестнадцатиричным числом.');
end.
Тестовое решение:
Введите строку:
58bfa
Введенная строка является шестнадцатиричным числом.
Введите строку:
1054Acg
Введенная строка не является шестнадцатиричным числом.
Не нашли ответ?
Похожие вопросы