Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Подпрограмма из шестнадцатеричной системы в десятичную


Автор: ArniLand 24.12.2009, 12:01
Прошу помочь написать программу на паскале которую нужно разбить на подпрограммы. Цель такова - дан ряд символов, символ представляет из себя целое число в шестнадцатеричной системе счисления перевести его в целое число в десятичной системе счисления, иначе видать сообщение об ошибке про некорректное ведение(использовать флаг). Можно не использовать вывод на экран, а можно чтобы было посмотреть перевод через watch в дебагерре Заранее спасибо.

Автор: Snowy 24.12.2009, 14:06
Ну и в чём помочь?
Перевести из Hex в десятичную?
На дельфи так:
Код
function HexToInt(h: string): Integer;
var c: integer;
begin
  Val('$' + h, result, c);
  if c > 0 then Result := -1;
end;
На паскале так:
Код
function HexToInt(h: string): integer;
var
  i, c: integer;
begin
  val('$'+h, i, c);
  if c > 0 then HexToInt := -1
  else HexToInt := i;
end;
Скармливаем строку, получаем число. Или -1, если не получилось.

Автор: volvo877 24.12.2009, 16:17
Snowy, наоборот... Для Паскаля знак на "=" поменяй, если ошибки не было, C = 0...

Автор: Snowy 24.12.2009, 17:02
А, ну да. Поправил.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)