Зачем алгоритм?
begin
// Display 1234 decimal in hex with minimal width
ShowMessage('1234 decimal = '+IntToHex(1234, 1));
// Display 1234 decimal in hex with fixed width
ShowMessage('1234 decimal = '+IntToHex(1234, 8));
end;
ну или
program dec2hex;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
BASE16 = 16;
var
HexValue : string;
Remainder : Integer;
Quotient : Integer;
begin
HexValue := '';
write( 'Enter an integer value: ' );
readln( Quotient );
while Quotient > 0 do
begin
Remainder := Quotient mod BASE16;
case Remainder of
10: HexValue := 'A' + HexValue;
11: HexValue := 'B' + HexValue;
12: HexValue := 'C' + HexValue;
13: HexValue := 'D' + HexValue;
14: HexValue := 'E' + HexValue;
15: HexValue := 'F' + HexValue;
else
HexValue := IntToStr( Remainder ) + HexValue;
end;
Quotient := Quotient div BASE16
end;
writeln;
writeln( HexValue );
writeln;
end.
ps: если словесное описание "на пальцах", то
1) Делим десятичное число А на 16. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит шестнадцатеричного числа.
2) Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток записывается в разряды шестнадцатеричного числа в направлении от младшего бита к старшему.
3) Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a меньше 16.
Другие языки программирования и технологии
Нужна помощь в делфи. Dec to hex
Сергей Геворгян
Это не то что нужно)
Любой букварь по программированию открой и на первых страницах найдешь тему по системам счисления!
Вообщем учи матчасть!
Или просто поюзай API wsprintf (за продробностями - на мсдн)
Вообщем учи матчасть!
Или просто поюзай API wsprintf (за продробностями - на мсдн)
Сергей Геворгян
как перевести на листочке с ручкой я знаю, а как это реализовать в Delphi???
Похожие вопросы
- Нужна помощь по информатике.
- Нужна помощь с паскалем!
- Программисты,нужна помощь,пожалуйста Для вас легко
- Логика. Нужна помощь.
- Нужна помощь
- Информатика!Нужна помощь!если можно,с объяснением.
- Пожалуйста, очень нужна помощь с Pascal
- Люди! Нужна помощь. Помогите настроить Оперу
- Срочно нужна помощь WEB-программиста, который мог бы состряпать сайт
- Нужна помощь с win 7 !