| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Алгоритмы > системы счисления |
| Автор: VingradFan 10.10.2006, 00:22 | ||
| всем привет!!! не знал куда запостить решил к вам ))) мне задача попалась сложнейшая!!! даже не знаю как начать!!! помогите если знете плз!!!
|
| Автор: maxim1000 10.10.2006, 01:18 |
| это надо для конкретно этого примера или придумать какой-то алгоритм для общего случая? |
| Автор: Aloha 10.10.2006, 01:47 |
| VingradFan 9-ричная: 24321 + 82357 = 116678 10-тичная: 24321 + 92357 = 116678 11-ричная: 24321 + A2357 = 116678 и т.д. Например в 16-ричной: 24321 + F2357 = 116678 а в 17-ричной: 24321 + G2357 = 116678 (в общем, пока буквы не кончатся). |
| Автор: VingradFan 10.10.2006, 09:01 |
| спасибо! а можете хоть в 2-х словах объяснить как вы нашли решение, ну скажем для 9-ричной системы |
| Автор: mes 11.10.2006, 03:23 |
Вначале отделим мух(звездочки) от котлет(известных цифр) : Имеем 24**1+*235*=116678, Так как у нас звездочки стоят каждый в своём разряде, то со спокойной душой каждое слагаемое заменяем суммой известного и неизвестного 24**1 = 24001 + 00**0 *235* = 02350+ *000* Получилось: 24001 + 00**0 + 02350+ *000* = 116678 ==> *0*** = 116678 - (24001+ 2350) Обращаем внимание, что самая большая цифра у нас 8 значит система как минимум 9тиричная. Поразрядно без переполнения производим операции упрошения 24001 + 2350 = 26351 116678 - 26351= 110327-20000 Итого : *0*** = 110327-20000 Логически следует: *0327 = 110327-20000 , где * = 11-2 распределим *0327 обратно: 24**1= 24321 *235*=*2357 Итого пришли к выражению: 24321+*2357=116678 Теперь у нас осталась одна звездочка и её значение ищем в разных системах счисления 9тиричная 11-2 = 8, ==> *2357 = 82357 и так далее П.С. писал засыпая, поетому возможны опечатки, но мысль думаю передал |
| Автор: maxim1000 11.10.2006, 18:03 |
| Модератор: второй вопрос выделил в новую тему |