Попросили знакомым написать рассчетку для ленивого дитяти... А там в
задании необходимо среди прочего барахла превратить дробное число из
десятичного в двоичное... С точностью не менее 8 знаков в дробной
части... Забег по склерозу подсказал что в мои годы мы занимались
только целыми числами...
как и десятичная дробь:
0,abcdefg... = a/2+b/4+c/8+d/16+e/32+f/64+g/128
и алгоритм соответсвенно близко к алгоритму для целых
2007/2/8, Eugene Ostapets [EMAIL PROTECTED]:
Попросили знакомым написать рассчетку для ленивого дитяти... А там в
задании необходимо среди прочего барахла превратить
кстати запятая по ходу сохраняет место - бишь можно отдельно целую
часть отконвертить, а потом дробну ю: 0,26712 представить и
отконвертить как целое 26712 , а потом тупо дописать результат после
запятой (потому что значение разрядов сохранится, ибо 1/2 это 64/128)
2007/2/8, [EMAIL PROTECTED]
а, нет. насчет последнего я что-то гоню. (10) 0,5 = (2) 0,1
2007/2/8, [EMAIL PROTECTED] [EMAIL PROTECTED]:
кстати запятая по ходу сохраняет место - бишь можно отдельно целую
часть отконвертить, а потом дробну ю: 0,26712 представить и
отконвертить как целое 26712 , а потом тупо дописать
кстати запятая по ходу сохраняет место - бишь можно отдельно целую
часть отконвертить, а потом дробну ю: 0,26712 представить и
отконвертить как целое 26712 , а потом тупо дописать результат после
запятой (потому что значение разрядов сохранится, ибо 1/2 это 64/128)
Не получится.
0.1b = 0.5d
да, я уже обломался :)
2007/2/8, Damir Shayhutdinov [EMAIL PROTECTED]:
кстати запятая по ходу сохраняет место - бишь можно отдельно целую
часть отконвертить, а потом дробну ю: 0,26712 представить и
отконвертить как целое 26712 , а потом тупо дописать результат после
запятой (потому что
2007/2/8, [EMAIL PROTECTED] gns altlinux.ru:
да, я уже обломался :)
2007/2/8, Damir Shayhutdinov [EMAIL PROTECTED]:
кстати запятая по ходу сохраняет место - бишь можно отдельно целую
часть отконвертить, а потом дробну ю: 0,26712 представить и
отконвертить как целое 26712 , а потом
так знает кто-то правило? Ибо пользоваться qalculator я тоже умею, но
беглый взгляд в его исходники убедил меня что алгоритм преобразования
я из него не вытащу... :)
Вот например:
надо перевести число 0.625 в двоичное.
0. Остаток = дробной части
1. Если остаток равен 0, прекратить алгоритм
2.
Уточненный алгоритм выглядит так:
0. Остаток = дробной части исходного числа
1. Если остаток равен 0, прекратить алгоритм
2. Остаток 0.5 ?
3. Если да, то записать 0, и умножить остаток на 2.
4. Иначе записать 1, отнять 0.5 и умножить на 2.
5. Перейти к пункту 1.
Заменил Если больше или
В Чтв, 08/02/2007 в 20:01 +0300, Damir Shayhutdinov пишет:
В принципе, для всех дробей, делитель которых не является степенью 2
-результатом
будет периодическая дробь.
:) Какой период, например, у 0.011011100101110000...? И что означает
фраза: делитель которых не является степенью 2?
On Tue, Feb 06, 2007 at 08:53:01PM +0300, Alexey Voinov wrote:
А в чем вообще принципиальнальное различие между scheme и lisp? man что на
предмет истории развития этих языков?
AV http://community.schemewiki.org/?Lisp
AV http://community.schemewiki.org/?what-is-scheme
AV
On Thu, Feb 08, 2007 at 08:05:20PM +0300, Damir Shayhutdinov wrote:
Уточненный алгоритм выглядит так:
0. Остаток = дробной части исходного числа
1. Если остаток равен 0, прекратить алгоритм
2. Остаток 0.5 ?
3. Если да, то записать 0, и умножить остаток на 2.
4. Иначе записать 1,
не знаю про ту дробь, но вот иррациональное двоичное число:
0,10110111001011011100... :) но нам в общем
пофиг, потому что сказано до 8 знаков
PS. щодо - это гугл мейл на несуществующием языке пишет. по поводу,
относительно. Re: короче.
13 matches
Mail list logo