Написать программу, которая проверяет, является ли введённая с
клавиатуры строка шестнадцатеричным числом. В Паскале.
Ответы
Ответ дал:
0
Решение в приложении!!
----------
Пробный запуск №1:
Введите строку:
A1015BFZ
Введенная строка не является шеснадцатиричным числом.
Пробный запуск №2:
Введите строку:
58bfa
Введенная строка является шеснадцатиричным числом.
----------
Пробный запуск №1:
Введите строку:
A1015BFZ
Введенная строка не является шеснадцатиричным числом.
Пробный запуск №2:
Введите строку:
58bfa
Введенная строка является шеснадцатиричным числом.
Приложения:
Ответ дал:
0
Не понравилась реализация, переделал, специально сохранив основу предыдущего решения.
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
Введенная строка не является шестнадцатиричным числом.
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
Введенная строка не является шестнадцатиричным числом.
Приложения:
Вас заинтересует
2 года назад
8 лет назад
8 лет назад
10 лет назад
10 лет назад