| AlexSt |
5.12.2007 21:35
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 38 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
Code: |
![]() ![]() |
| AlexSt |
18.12.2007 21:25
Сообщение
#2
|
|
Новичок ![]() Группа: Пользователи Сообщений: 38 Пол: Мужской Реальное имя: Алексей Репутация: 0 |
а какие ещё есть варианты кроме как "разделить" и "слепить"? у меня только такая идея и была...(
|
| Lapp |
19.12.2007 8:48
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
а какие ещё есть варианты кроме как "разделить" и "слепить"? у меня только такая идея и была...( Еще вариант - про который я говорил с самого начала. В той проге, которую ты выбрал за образец, перевод делается так: Число (А) в записанное в СС1 с основанием D1 нужно перевести в СС2 с основанием D2. Допустим, что мы уже умеем умножать числа в любой системе счисления (одинаковой, естественно, для обоих сомножителей). Переводим каждую цифру этого числа из СС1 в СС2. Теперь это уже, возможно, не цифры, а числа (например, 5 десятичное = 101 двоичное). Дальше действуем по формуле, которую я сегодня уже кому-то тут писал.. Например, исходное число a3a2a1a0 (каждое ai - цифра), то есть: A(СС1) = a3*D1^3 + a2*D1^2 + a1*D1 + a0 Мы перевели каждую цифру в другую систему ai(CC1) = ai(CC2) = ai2. Также, мы переводим основание первой системы В1 в СС2 D1(CC1) = D1(CC2) = D12 Теперь перепишем, чему равно А, но уже в СС2: A(СС2) = a32*D12^3 + a22*D12^2 + a12*D12 + a0 Осталось произвести эти умножения и сложения (теперь понял, почему они есть в той проге?) Идем дальше, хотим дроби. То есть теперь у нас число выглядит так: A = a3a2a1a0.b1b2 - тут две цифры после запятой. Переводить его надо аналогично, только с дробными цифрами будут стоять отрицательные степени основания: A(СС2) = a32*D12^3 + a22*D12^2 + a12*D12 + a0 + b12*D12^-1 + b22*D12^-2 Вот и все. Казалось бы, то же самое. Но только отрицательные степени - это деление: D12^-n = 1/(D12^n) То есть, вот так: A(СС2) = a32*D12^3 + a22*D12^2 + a12*D12 + a0 + b12/D12^1 + b22/D12^2 Так что тебе понадобится деление. Я бы на твоем месте все сделал заново, без той проги.. Ничего особо сложного, а путаницы меньше. Время есть? -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
AlexSt операции над сист счисления 5.12.2007 21:35
Lapp AlexSt, пожалуйста, не дублируй темы.
Два дубля э... 6.12.2007 3:06
AlexSt помогите модернизировать алгоритм конвертации чисе... 14.12.2007 10:51
AlexSt что, никто не может объяснить даже на словах как з... 14.12.2007 23:38
Lapp Послушай, AlexSt, а сам-то ты что-нибудь сделал?..... 15.12.2007 10:04
AlexSt в проге я разобрался, сам сделал вычитание, хочу щ... 15.12.2007 11:19
Lapp
в проге я разобрался, сам сделал вычитание, хочу ... 15.12.2007 14:50
AlexSt ок, только что весьма надёжно получилось сделать у... 15.12.2007 21:24
AlexSt и ещё там есть ф-ция преконверт, гре я пытался сде... 16.12.2007 10:13
AlexSt и ещё, под каким номером находится shift и space, ... 16.12.2007 14:13
andriano Пробел - #20, у Shift кода нет - это клавиша-модиф... 16.12.2007 14:44
AlexSt спасибо за подсказочку :4: , сегодня за целый день... 16.12.2007 21:26
Lapp наваял код по конвертированию в др сс с дробной ча... 18.12.2007 9:06
Гость спасибо, наверно так и сделаю, деление только как.... 19.12.2007 11:16
Lapp
спасибо, наверно так и сделаю, деление только как... 19.12.2007 11:42
AlexSt ))) если есть алгоритм или знаешь где есть отпишис... 19.12.2007 19:02
AlexSt кстати, к свелению у меня прога на делфы...
я дума... 19.12.2007 19:44
Lapp к свелению у меня прога на делфы...Не знаю, к како... 21.12.2007 8:25
AlexSt ого!, здо'рово! попытаюсь разобраться,... 21.12.2007 12:32
Lapp
хотел ещё узнать при конвертации если количество ... 23.12.2007 3:16
andriano
Дробная часть меньше единицы, целая - больше. Он... 23.12.2007 12:13
Lapp 1. Что знечит "любое основание"? Или чис... 23.12.2007 15:40
AlexSt lapp, если не трудно, выложи :good:
я вот конверта... 25.12.2007 8:39
Lapp Выкладываю.
Предупреждаю:
1. решение не оптимиз... 25.12.2007 15:58![]() ![]() |
|
Текстовая версия | 8.12.2025 22:41 |