Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 06.01.2017
Сообщений: 13

Длинная арифметика: найти остаток от деления большого числа (до 10^100 000) на 12

06.02.2019, 18:54. Показов 6932. Ответов 23

Студворк — интернет-сервис помощи студентам
Здравствуйте, вопрос по поводу задачки, хочу попытаться реализовать решение на плюсах, а не на питоне.
Суть такая: надо найти остаток от деления большого числа (до 10^100 000) на 12.


Также ещё одна задачка на ту же тему: надо найти корень из числа, не превышающее 10^500, если оно является полным квадратом, в обратном случае вывести -1.

Непонятно именно то, как реализовать работу с такими числами в С++, если предоставите код с коментариями-буду благодарен!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.02.2019, 18:54
Ответы с готовыми решениями:

Длинная арифметика: найти частное и остаток от деления числа a на b
Даны два длинных числа a и b. Найти частное и остаток при делении числа a на b. Не могу реализовать деление отрицательных чисел. Помогите...

Длинная арифметика: найти частное и остаток от деления чисел в 3-ой системе счисления
Даны два натуральных числа, содержащих до 50 разрядов. Используя операции сложения, вычитания, умножения и деления с большими числами,...

Остаток от деления (длинная арифметика)
Здраствуйте, друзья мне нужно написать программу вычисляющую остаток от деления m-значного числа на n-значное, где (m и n>20). Дайте...

23
0 / 0 / 0
Регистрация: 06.01.2017
Сообщений: 13
09.02.2019, 11:25  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Байт Посмотреть сообщение
Irrialon, Как задаются числа? В виде строки цифр?
Первая решается вообще чрезвычайно просто, без всякой длинки. Есть признаки деления на 3 и на 4
Вторую можно попробовать решить путем "школьного" алгоритма извлечения корня. Где-то обсуждалось недавно на форуме для обычных чисел. Попробую найти. И обобщить его для длинных.

Добавлено через 3 минуты
Разработать функцию, определяющую, является ли натуральное число квадратом какого-либо другого целого числа
Число задается в виде документа "input.txt", текстовый файл с числом
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
09.02.2019, 13:28
Цитата Сообщение от Irrialon Посмотреть сообщение
Число задается в виде документа "input.txt", текстовый файл с числом
То есть в виде строки из цифр? Так? То, что эта строка помещена в файл - дело уже десятое.
Первую-то задачу уже решили?

Добавлено через 15 минут
По поводу второй задачи могу предложить метод деления пополам, как наиболее просто реализуемый. Правда, здесь без длинки не обойтись. Но операций надо реализовать всего три. Сложение, умножение и деление на 2.
Кроме того можно еще проверить последнюю цифру. Если она равна 2, 3, 7, 8 то ответ получается мгновенно: -1. Что решает задачу в 40 процентах случаев.
0
0 / 0 / 0
Регистрация: 06.01.2017
Сообщений: 13
09.02.2019, 14:25  [ТС]
Цитата Сообщение от Байт Посмотреть сообщение
То есть в виде строки из цифр? Так? То, что эта строка помещена в файл - дело уже десятое.
Первую-то задачу уже решили?

Добавлено через 15 минут
По поводу второй задачи могу предложить метод деления пополам, как наиболее просто реализуемый. Правда, здесь без длинки не обойтись. Но операций надо реализовать всего три. Сложение, умножение и деление на 2.
Кроме того можно еще проверить последнюю цифру. Если она равна 2, 3, 7, 8 то ответ получается мгновенно: -1. Что решает задачу в 40 процентах случаев.
По первой задаче я понял, но для деления на 3 нужна ведь сумма цифр, как же её найти? В переменную то не запишешь это число
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
09.02.2019, 14:39
Цитата Сообщение от Irrialon Посмотреть сообщение
но для деления на 3 нужна ведь сумма цифр, как же её найти? В переменную то не запишешь это число
Каждая цифра не больше 9-ти. Делите по модулю 3
C++
1
2
3
4
char s[[100000]; // Это число
int sd = 0;
for(int i=0; s[i]; i++)
  sd = (sd + s[i] - '0')%3;
Да и просто число до мульона спокойно влезет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.02.2019, 14:39

Длинная арифметика. Частное и остаток от деления
Даны целое неотрицательное число M и целое положительное число N. Найти M div N и M mod N. Длинная арифметика с подключением файла.

Длинная арифметика (С++ Builder XE5) - не выводится остаток от деления
Помогите пожалуйста с программой, необходимо разработать приложение, реализующие сложение, вычитание, умножение и деление двух целых...

Найти остаток от деления большого числа
Очень нужно решить. Не могу понять как. Помогите пожалуйста! Найти остаток от деления числа 1261020 на 138

Найти частное и остаток от деления одного большого числа на другое
Даны целое неотрицательное число MM и целое положительное число NN. Найти частное и остаток от деления MM на NN. Ограничения: 0 ≤ M...

длинная арифметика. Умножение большого числа на малое
Столкнулся с небольшой проблемой: при умножении большого числа (примерно 9 знаков) на небольшое выводит непонятно что, но с малыми числами...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru