Я даже понятия не имею с чего начинать. Похожее задание делал одногруппник (только там с умножением 2х длинных целых), работал со строками. Помогите пожалуйста с этим заданием если сможете
![unsure.gif](style_emoticons/default/unsure.gif)
![]() ![]() |
![]() |
Calling |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Пол: Женский Репутация: ![]() ![]() ![]() |
Здравствуйте! Задали нам лабу, которую я никак не могу понять как делать. Задание такое: Найти остаток от деления одного длинного целого на другое. При этом нельзя использовать базовые типы (арифметика многократной точности) и программную реализацию рациональных чисел.
Я даже понятия не имею с чего начинать. Похожее задание делал одногруппник (только там с умножением 2х длинных целых), работал со строками. Помогите пожалуйста с этим заданием если сможете ![]() |
andriano |
![]()
Сообщение
#2
|
Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: ![]() ![]() ![]() |
Начать следует с того, что более конкретно сформулировать, чем можно пользоваться и чем - нельзя.
Создать программу, не использующую ни одной переменной (а как еще можно воспринимать запрет на ВСЕ базовые типы?), достаточно проблематично. Без базового числового типа не сделаешь даже цикл. |
Calling |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 4 Пол: Женский Репутация: ![]() ![]() ![]() |
Начать следует с того, что более конкретно сформулировать, чем можно пользоваться и чем - нельзя. Создать программу, не использующую ни одной переменной (а как еще можно воспринимать запрет на ВСЕ базовые типы?), достаточно проблематично. Без базового числового типа не сделаешь даже цикл. задание звучит так: Лабораторная работа включает задания по программной реализации точных вычислений, которые не могут быть непосредственно выполнены с использованием базовых типов алгоритмического языка (арифметика многократной точности) и программной реализации рациональных чисел. При реализации заданных структур данных можно использовать любые базовые типы алгоритмического язык. И вариант задания, который я писала выше. |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
В таком случае тебе надо просто найти в FAQ-е тему Длинная Арифметика, и воспользоваться тем, что там написано. Ни с одним пунктом твоего задания это не будет конфликтовать...
|
Calling |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 4 Пол: Женский Репутация: ![]() ![]() ![]() |
ок спасибо, поищу
|
andriano |
![]()
Сообщение
#6
|
Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: ![]() ![]() ![]() |
задание звучит так: ... Цитата И вариант задания, который я писала выше. Увы, первоначально описанный "вариант" имеет очень мало общего с тем, что приведено позже.Ну а самый разумный совет по данной теме уже был приведен: искать либо здесь, либо поисковыми системами по словосочетанию "длинная арифметика". |
Calling |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 4 Пол: Женский Репутация: ![]() ![]() ![]() |
Увы, первоначально описанный "вариант" имеет очень мало общего с тем, что приведено позже. Я имела ввиду вариант: Найти остаток от деления одного длинного целого на другое. Почитала FAQ, но не совсем поняла как делать задание. Пожалуйста, не могли бы вы хотя б набросок сделать этой проги. Извините за такую наглость, просто я дуб-дерево ![]() |
andriano |
![]()
Сообщение
#8
|
Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: ![]() ![]() ![]() |
Деревья программы не пишут.
Не нужно им это. Если тебе нужно, значит, ты не дерево, и надо затратить хоть немного собственных усилий для того, чтобы что-то получилось. Основная идея достаточно проста и полностью совпадает с тем, как мы проводим вычисления с помощью карандаша и бумаги. Числа мы представляем в виде набора цифр. Для любой пары цифр нам известны таблица умножения и таблица сложения. Пользуясь этими таблицами, а также известным алгоритмом (например в столбик), мы можем проводить вычисления над многозначными числами. Точно так же происходят вычисления и в длинной арифметике - число представляется массивом, а каждый элемент массива - своеобразная цифра. Если в качестве длинных чисел использовать строки, то один знак - десятичная цифра. Если пользоваться примером из FAQ, каждое число массива - это 10000-чная цифра, т.е. цифра, значение которой лежит в диапазоне от 0 до 9999. |
![]() ![]() |
![]() |
Текстовая версия | 16.06.2024 19:14 |