НОД под длинную арифметику |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
НОД под длинную арифметику |
Witaliy |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 43 Пол: Мужской Реальное имя: Witaliy Репутация: 0 |
Здравствуйте
Мне нужно алгоритм нахождения НОД под длинную арифметику, тоисть что-бы был как можно быстрее. У меня есть рекурсивный и с использованием mod, но под длинную арифметику ето неефективно. Мне любой кроме остатка от деляния и рекурсии. Мне реализации самой длинной арифметики ненадо, только алгоритм НОД. Спасибо. Сообщение отредактировано: Witaliy - |
volvo |
Сообщение
#2
|
Гость |
Цитата покажыте мне готовую процедуру зделаную с моеей Твоя программа при попытке вычислить НОД чисел 3459687349586734095673495679304769348576934076 и 3985793475394875757584 вообще вылетает с переполнением стека. Ты ее что, не проверял со всеми возможными ключами?Вот, я присоединил переделанную программу, которая не вылетает, считает НОД-ы, но как я тебе и говорил, здесь все зависит от реализации длинной арифметики. У тебя она не очень удачная, поэтому считается медленно. Можно чуть-чуть ускорить, конечно (например, сдвигать с использованием Move, а не циклами, обнулять не в цикле, а через FillChar), но резкого увеличения скорости все-же не будет... Надо переписывать программу полностью... Прикрепленные файлы LA.PAS ( 4.21 килобайт ) Кол-во скачиваний: 225 |
Текстовая версия | 4.05.2024 8:28 |