Написать программу, которая проверяет, является ли введённая с клавиатуры строка...

0 голосов
Написать программу, которая проверяет, является ли введённая с
клавиатуры строка шестнадцатеричным числом. В Паскале.

спросил от (23 баллов) в категории Информатика
2 Ответы
0 голосов
ответил от Архангел (142k баллов)
 
Лучший ответ

Не понравилась реализация, переделал, специально сохранив основу предыдущего решения.

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<br>  begin
    if not (s[i] in legal) then IsHex := False;
    i := i + 1
  end;
  if isHex then
    writeln('Введенная строка является шестнадцатиричным числом.')
  else
    writeln('Введенная строка не является шестнадцатиричным числом.');
end.

Тестовое решение:

Введите строку:
58bfa
Введенная строка является шестнадцатиричным числом.
Введите строку:
1054Acg
Введенная строка не является шестнадцатиричным числом.



0 голосов
ответил от Начинающий (401 баллов)

Решение в приложении!!
----------
Пробный запуск №1:

Введите строку:
A1015BFZ
Введенная строка не является шеснадцатиричным числом.

Пробный запуск №2:

Введите строку:
58bfa
Введенная строка является шеснадцатиричным числом.


Скачать вложение Текст (TXT)
...