• Вы не могли бы помочь написать программу перевода из 16-й в 2-ую систему счисления. (с функцией.)

Ответы 4

  • а вы не могли бы пояснить за что отвечает эта строчка (s16:=UpperCase(s16))
    • Автор:

      kelton
    • 6 лет назад
    • 0
  • Это перекодировка к верхнему регистру, если a..f введут маленькими. Программа ведь на кодах символов работает, а у маленьких другие коды.
    • Автор:

      calikuts
    • 6 лет назад
    • 0
  • Для проверки в тестовом решении специально введена е вместо Е
    • Автор:

      victorio
    • 6 лет назад
    • 0
  • function f16t2(s16:string):string;const  m:array['0'..'F'] of string=    ('0000','0001','0010','0011','0100','0101','0110','0111',     '1000','1001','','','','','','','','1010','1011','1100',     '1101','1110','1111');  m1:array['0'..'F'] of string=    ('0','1','10','11','100','101','110','111','1000','1001','',     '','','','','','','1010','1011','1100','1101','1110','1111');var  s:string;  i:integer;begin  s16:=UpperCase(s16);  s:=m1[s16[1]]+'''';  for i:=2 to Length(s16) do s:=s+m[s16[i]]+'''';  f16t2:=Copy(s,1,Length(s)-1)end;var  s:string;begin  Write('Введите шестнадцатиричное число: '); Readln(s);  Writeln('В двоичной системе: ',f16t2(s))end.Тестовое решение:Введите шестнадцатиричное число: 5AC8e2В двоичной системе: 101'1010'1100'1000'1110'0010Если разбивка вывода по тетрадам не нужна, можно чуть упростить:function f16t2(s16:string):string;const  m:array['0'..'F'] of string=    ('0000','0001','0010','0011','0100','0101','0110','0111',     '1000','1001','','','','','','','','1010','1011','1100',     '1101','1110','1111');  m1:array['0'..'F'] of string=    ('0','1','10','11','100','101','110','111','1000','1001','',     '','','','','','','1010','1011','1100','1101','1110','1111');var  s:string;  i:integer;begin  s16:=UpperCase(s16);  s:=m1[s16[1]];  for i:=2 to Length(s16) do s:=s+m[s16[i]];  f16t2:=send;var  s:string;begin  Write('Введите шестнадцатиричное число: '); Readln(s);  Writeln('В двоичной системе: ',f16t2(s))end.Тестовое решение:Введите шестнадцатиричное число: 5AC8e2В двоичной системе: 10110101100100011100010
    • Автор:

      breel1ym
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years