var
hexa: string; {шестнадцатеричное число}
n: byte; {его длина}
ch: char; {цифра очередного разряда как символ}
digit: byte; {цифра очередного разряда}
m: byte; {степень 16}
decimal: integer; {десятичное число}
i: byte;
function pow16(m: byte):integer;
var i: byte;
begin
pow16 := 1;
for i := 1 to m do
pow16 := pow16 * 16;
end;
begin
write('Hexadecimal: ');
readln(hexa);
n := length(hexa);
decimal := 0;
m := n;
for i:=1 to n do begin
ch := hexa[i];
if ch in ['A'..'F'] then
case ch of
'A': digit := 10;
'B': digit := 11;
'C': digit := 12;
'D': digit := 13;
'E': digit := 14;
'F': digit := 15
end
else
digit := ord(ch) - ord('0');
m := m - 1;
decimal := decimal + digit * pow16(m);
end;
writeln('Decimal: ',decimal);
readln
end.
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники