| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Деление болших чисел не пребегая к BigInteger? |
| Автор: unkis 25.11.2004, 17:12 |
| Ребята нужен алгоритм деления лубих больших не отрецателних целих чисел, которий возвращяет резултат и остаток. При етом исползоват ммогно только елиментарние типи данних(БигИнтежер исползоват нелзя). пример. 1000000000000000000000000000000000000000:20000000000000000000000000000000=........ Кто знает подскагите пожалуйста . Зарания благодарен! |
| Автор: AntonSaburov 25.11.2004, 17:29 |
| Берем книгу Кнута, там находим алгоритм и пишем, пишем, пишем В принципе тут без шуток - они напоминают умножение, деление, вычитание и сложение столбиком. В принципе реализовать не очень сложно. |
| Автор: Domestic Cat 25.11.2004, 17:35 | ||||||
Деление двух целых неотрицательных чисел - это просто вычитание одного из другого до тех пор, пока второе не станет меньше чем первое:
То есть, нужно знать, кak вычитать целыe числа произвольной длины и как их сравнивать. Хранить эи чслa можнo в массивах :
Тогдa сравниват' их очень простo :
- предполагается, что числа не начнаются с 0. Вычитать тоже просто, вспомни кak это делается столбиком и делай то жe самое с массивамi. |
| Автор: unkis 25.11.2004, 17:47 | ||
Domestic Cat я тут прикинул и вот что получается если мне надо к примеру разделит числа
то по вашему методу из 4 я не могу вичесть 9 так как 4<9 ????? AntonSaburov у меня ест книги кнута, правда в електронном виде, и там нет оглавления, ви не подскагете в каком томе на какой странице я могу наити ети олгаритми, зарания благодарен. |
| Автор: AntonSaburov 25.11.2004, 17:52 |
| Скорее всего в первом, но я не помню точно. Давно смотрел. Книга мне давалась тяжело. Если найду, то скажу. |
| Автор: Domestic Cat 25.11.2004, 17:59 | ||||
ну а столбиком как вычiтается?
алгоритм тут несложный |
| Автор: Sleepy_PIP 25.11.2004, 21:45 | ||||
если я правильно понимаю - том 2, параграф 4.3, стр. 304 - это начало. |
| Автор: unkis 26.11.2004, 12:26 |
| Ребята щсем болшое спасибо. Попробуемс |