forum.rastrnet.ru

forum.rastrnet.ru (http://forum.rastrnet.ru/index.php)
-   Программируем (http://forum.rastrnet.ru/forumdisplay.php?f=35)
-   -   Системы исчесления (http://forum.rastrnet.ru/showthread.php?t=16957)

Chamal 30.04.2006 13:05

Системы исчесления
 
Необходимо перевести щестнац-е число в десятичное:
подскажите как? (например 78A)
также из 10-ой в дроичную.
и из десят-ной в шестнац-ную.

подскажите... плиз...

METALLUGA 30.04.2006 13:07

Калькулятор виндовский это делает на легке

Aleua 02.05.2006 00:40

Перевод шестнац-е число в десятичное:
7*256+8*16+10 = 1930.
Для перевода из десятичную в двоичную или шестнац-ую систему нужно делить число на 2 или на 16 соответственно, остаток записывать справа на лево. Еще существует множество способов перевода.

delog 27.05.2006 11:45

Цитата:

Сообщение от Aleua
Перевод шестнац-е число в десятичное:
7*256+8*16+10 = 1930.

Хе-хе, а нука переведи мне число 6СА в десятичную систему :) Как ты это сделаешь? Так чтоли: 6*256+С*16+A? =)
Внимание! Правильный ответ! Чтоб уж наверняка не осталось вопросов напишу функцию:

function hex2dec(h:string):integer;
Begin
result:=StrToInt('$'+h)
End;

Пример использования:
x:=hex2dec('6CA');

Aleua 27.05.2006 19:18

Легко
6СА
6*256+12*16+10=1738
Для справки: A-10, B-11, C-12, D-13, E-14, F-15

delog 29.05.2006 18:37

Цитата:

Сообщение от Aleua
Легко
6СА
6*256+12*16+10=1738
Для справки: A-10, B-11, C-12, D-13, E-14, F-15

Ну и как ты объяснишь компьютеру, что буква С -это 12? Будешь писать отдельную функцию, которая вырезает букву из строки, затем сравнивает ее на принадлежность множеству {A,B,C,D,E,F} затем возвращает результат?
Для справки: в object pascal'е шеснадцатеричные числа записываются так: $6CA и не надо изобретать велосипед.

Aleua 29.05.2006 18:40

а зачем на компьютере???, ни кто не просил что надо для компьютера, я просто привел один из 1000 методов перевода в ручную использую только бумажку и карандаш.

delog 29.05.2006 18:54

Просто я под ссылкой "программирование" прочитал вот это:
Цитата:

тока языки программирования остальное- оффтопик
и решил, что мое замечание будет весьма кстати.

Aleua 29.05.2006 18:57

ясно, а я не заметил :)

TiRex 29.05.2006 21:11

Ну а если надо переводить не из шеснадцатиричной? а из стосорокасемиричной? или из троичной в семиричную? Ты тут каким велосипедом пользоваться будешь? Велосипед тебе будет дан - а имено алгоритм, вот его то как раз Aleua и давал. Проще тогда вообще присваивать таким макаром: x=0x0a. при выводе x=10.


Текущее время: 19:17. Часовой пояс GMT +7.

Powered by vBulletin® Version 3.8.4 Patch Level 5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot

Форум открыт в июле 2004 г.