Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Вниз

Очередной тупой вопрос   Найти похожие ветки 

 
Тупак   (2006-08-21 20:59) [0]

Как перевести число из Edit1 из десятичной системы например в восьмеричную?


 
Leonid Troyanovsky ©   (2006-08-21 21:02) [1]


> Тупак   (21.08.06 20:59)  

> Как перевести число из Edit1 из десятичной системы например
> в восьмеричную?


Восмиричная - отстой.
Пользуй шестнадцатиричную.

--
Regards, LVT.


 
Тупак   (2006-08-21 21:06) [2]

Мне надо именно восьмеричную. Тем более извените, на я поставил вопрос
КАК ЭТО СДЕЛАТЬ, А НЕ КАКАЯ ЛУЧШЕ...


 
begin...end ©   (2006-08-21 21:10) [3]

Последовательно делить число на 8, пока от него не останется нолик. Остатки от деления на каждом шаге и будут цифрами восьмеричного представления.


 
GeLLeR ©   (2006-08-21 21:12) [4]

АГРОМНОЕ СПАСИБО


 
Джо ©   (2006-08-21 21:15) [5]

> Остатки от деления на каждом шаге и будут цифрами восьмеричного
> представления.

В обратном порядке следования. Уточню на всякий случай.


 
tesseract ©   (2006-08-21 21:19) [6]

> [3] begin...end ©   (21.08.06 21:10)


насколько помню, это только для целых чисел.


 
Zeqfreed ©   (2006-08-21 21:22) [7]

> [3] begin...end ©   (21.08.06 21:10)

Только не нолик, а цифра меньшая основания системы счисления (т.е. меньшая 8).


 
begin...end ©   (2006-08-21 21:22) [8]

> Тупак

Вообще, как, имея число, получить цифры его десятичного представления? Нужно последовательно делить его на 10, т.е. на основание десятичной системы счисления, и смотреть на остатки. Например, число 1983:

1983 : 10 = 198 + 3
198 : 10 =  19 + 8
 19 : 10 =   1 + 9
  1 : 10 =   0 + 1


Как видите, остатки от деления -- это и есть цифры десятичного представления (только получаются они в "обратном порядке", от младшего разряда к старшему).

Точно так же будет и с восьмеричной системой, только теперь уже надо будет делить на 8, т.е. на основание восьмеричной системы. Например, число 751:

751 : 8 = 93 + 7
93 : 8 = 11 + 5
11 : 8 =  1 + 3
 1 : 8 =  0 + 1


Значит, десятичное число 751 в восьмерчиной системе будет выглядеть как 1357.


 
begin...end ©   (2006-08-21 21:38) [9]

> tesseract ©   (21.08.06 21:19) [6]

Да, конечно. В случае дробей по алгоритму [3] переводится только целая часть числа. Дробная же часть переводится последовательным её умножением на основание с выделением целых частей результата.

> Zeqfreed ©   (21.08.06 21:22) [7]

Я говорил о том, как составить представление по остаткам от деления на основание, поэтому по алгоритму [3] делить нужно всё же именно до тех пор, пока не останется 0 (см. примеры в [8]). Хотя, разумеется, псоледний раз можно и не делить -- очевидно, на последнем шаге делимое совпадает с остатком.


 
Anatoly Podgoretsky ©   (2006-08-21 22:04) [10]

Делить, делить


 
Ketmar ©   (2006-08-21 22:06) [11]

"всё отнять и поделить!" (ц)

извиняюсь за оффтоп...


 
Zeqfreed ©   (2006-08-21 22:27) [12]

> [9] begin...end ©   (21.08.06 21:38)

Ну да, я имел в виду, что последний раз можно не делить. Никак что-то мой мозг не хочет принимать то, что 2/4 = 0 + 2 в остатке, хотя понять и объяснить я это могу :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1156101306
Vazelin
2006-08-20 23:15
2006.09.10
Распаковка проги


15-1155618462
Ega23
2006-08-15 09:07
2006.09.10
С Днём рождения! 15 августа


2-1154595535
Vovan-qqq
2006-08-03 12:58
2006.09.10
MathType


3-1152082799
ttt_111
2006-07-05 10:59
2006.09.10
Некорректное завершение программы.


2-1156097090
Sergioni
2006-08-20 22:04
2006.09.10
ServerSocket на определенных сетевых картах





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский