1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
|
1 | |
Алгоритм Евклида19.11.2010, 18:34. Показов 21496. Ответов 22
Метки нет (Все метки)
Привет всем.
Задача такова, надо написать программу на С++ для поиска Самого Малого Кратного (СМК) по алгоритму Евклида. Дано три числа: a, b, c найти их самое малое кратное. Просьба, чтобы вверху програмы было не #include <isotream.h> a #include <stdio.h> тоесть чтобы програма была на самом минимальном уровне програмирования. Заранее спасибо.
0
|
19.11.2010, 18:34 | |
Ответы с готовыми решениями:
22
алгоритм евклида Алгоритм Евклида Необычный алгоритм Евклида Расширенный алгоритм Евклида |
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
19.11.2010, 19:30 | 2 |
Самое Малое Кратное по-русски называется Наименьшее Общее Кратное (NOK)
Наибольший общий делитель NOD(a,b) вычисляется по алгоритму Евклида - код для этого есть в wikipedia Дальше верно NOK(a,b,c)= NOK( NOK(a,b), c ) NOK(a,b)= a*b/NOD(a,b)
0
|
1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
|
20.11.2010, 00:00 [ТС] | 3 |
Я видел на википедии, но никак немогу ввести его в програмный код...
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
20.11.2010, 06:58 | 4 |
там есть формула, как найти его через НОД, а НОД есть в виде реализации
wiki. НОК wiki. НОД. реализация
0
|
1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
|
20.11.2010, 11:38 [ТС] | 5 |
Спасибо, посижу поколдую)
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
20.11.2010, 12:56 | 6 |
Только обрати внимание, что и НОД, и НОК должны быть положительны. В википедии об этом забыли.
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
20.11.2010, 22:56 | 8 |
Пример программы там без модуля.
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
21.11.2010, 01:06 | 10 |
Day, у вас та же ошибка — при отрицательных числах на входе НОД будет отрицательным.
0
|
1179 / 989 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
|
|||||||||||
21.11.2010, 01:20 | 12 | ||||||||||
Ну так обратитесь к ней через abs
Добавлено через 7 минут Слово "ошибка" тут не очень подходит. Пока не определена область определения переменных. Этак я могу сказать, что для вычисления суммы a и b код
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
||||||
21.11.2010, 01:42 | 13 | |||||
accept, чудесно, что ты нашёл среди неправильных один правильный вариант. А картинка верная, никто не спорит.
Day, НОД же для отрицательных чисел определён, поэтому нет смысла ставить ограничение на входные данные. В нашем случае
Добавлено через 15 минут Нужно отметить, что провернуть этот трюк позволяет именно неправильная реализация деления с остатком в языке Си.
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
||||||
21.11.2010, 02:24 | 15 | |||||
accept, он вообще прекрасен. К сожалению, его соседи не таковы.
Но лично мне больше всего нравится вот этот:
1
|
1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
||||||
21.11.2010, 13:53 [ТС] | 16 | |||||
0
|
1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
|
21.11.2010, 16:32 [ТС] | 18 |
А как должно быть, подскажите пожалуйста.
0
|
1 / 1 / 1
Регистрация: 28.10.2010
Сообщений: 112
|
|
21.11.2010, 17:14 [ТС] | 20 |
Заменил, неработает..
0
|
21.11.2010, 17:14 | |
21.11.2010, 17:14 | |
Помогаю со студенческими работами здесь
20
Визуализировать алгоритм Евклида Расширенный алгоритм Евклида Реализовать обобщенный алгоритм Евклида Алгоритм Евклида с использованием рекурсии Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |