![]() |
![]() |
Cheburashka |
![]() ![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 195 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
Меня затронула одна тема, с которой я ни как не могу справиться. Это деление чисел.
Меня интересует деление одного числа на другое если эти числа находятся в массивах (в каждом элементе одна цифра) или в строках. К примеру массив A{1,1,1,1,1,1}, массив B {1,1,1}. Или в тех же самых строках s1='111111', s2='111'; Расскажите алгоритм по которому можно данные числа разделить в самих массивах (строках). (Перевод числа в переменную целочисленного типа (longint, integer) не предлагать, так как я хочу использовать длинную арифметику.) -------------------- ♣♣♣
"Себя великим не считай, гордясь величьем предков, Величья не добудешь ты и золота ценою! Хоть светит на небе луна, но отраженным светом - Чужою славой не живи, не будь второй луною!!!" ♣♣♣ |
![]() ![]() |
Cheburashka |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 195 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
Извините, но я что-то запутался)
![]() -------------------- ♣♣♣
"Себя великим не считай, гордясь величьем предков, Величья не добудешь ты и золота ценою! Хоть светит на небе луна, но отраженным светом - Чужою славой не живи, не будь второй луною!!!" ♣♣♣ |
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Не могли бы вы написать примерчик какой-нибдь? ммммм.... Ну, попробую..539123948201 : 1756 result=0 Берем первую цифру делимого: 5 < 1756 сносим цифру: 53 < 1756 сносим цифру: 539 < 1756 сносим цифру: 5391 > 1756 (!) try 1 1*1756=1756 <= 5391 try 2 2*1756=3512 <= 5391 try 3 3*1756=5268 <= 5391 try 4 4*1756=7024 >= 5391 (!) result = result*10+3 = 3 вычитаем: 5391-5268=123 сносим цифру: 1232 < 1756 result = result*10 = 30 сносим цифру: 12323 > 1756 (!) try 1 1*1756=1756 <= 12323 try 2 2*1756=3512 <= 12323 try 3 3*1756=5268 <= 12323 try 4 4*1756=7024 <= 12323 try 5 5*1756=8780 <= 12323 try 6 6*1756=10536 <= 12323 try 7 7*1756=12292 <= 12323 try 8 8*1756=14048 > 12323 (!) result = result*10+7 = 30*10+7 = 307 вычитаем: 12323-12292=31 сносим цифру 319 < 1756 сносим........ и т.д. Я заранее извиняюсь, если нарутал со знаками неравенств. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 8.08.2025 6:00 |