Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

простые числа..

7.2K
12 июня 2005 года
koder
24 / / 09.05.2005
Как Проверить, являются ли два данных числа взаимно простыми?
255
13 июня 2005 года
Dart Bobr
1.4K / / 09.04.2004
Цитата:
Originally posted by koder
Как Проверить, являются ли два данных числа взаимно простыми?


Найти при помощи алгоритма Евклида их НОД. Если равен 1, то числа - взаимно простые.

292
17 июня 2005 года
Matush
726 / / 14.01.2004
Цитата:
Originally posted by Dart Bobr
Найти при помощи алгоритма Евклида их НОД. Если равен 1, то числа - взаимно простые.


Можно еще проверять делится ли без остачи данное число для всех чисел от 2 до SQRT(N), где N - проверяемое число.

255
18 июня 2005 года
Dart Bobr
1.4K / / 09.04.2004
Цитата:
Originally posted by Matush
Можно еще проверять делится ли без остачи данное число для всех чисел от 2 до SQRT(N), где N - проверяемое число.


Для двух достаточно больших чисел твой алгоритм будет жрать много времени.

292
21 июня 2005 года
Matush
726 / / 14.01.2004
Цитата:
Originally posted by Dart Bobr
Для двух достаточно больших чисел твой алгоритм будет жрать много времени.


Я привел его просто как один из алгоритмов. Он просто удивительно прост в реализации :)

247
22 июня 2005 года
wanja
1.2K / / 03.02.2003
Цитата:
Originally posted by Matush
Я привел его просто как один из алгоритмов. Он просто удивительно прост в реализации :)


Только не удивляйся, но алгоритм Евклида еще проще:D

292
22 июня 2005 года
Matush
726 / / 14.01.2004
Цитата:
Originally posted by wanja
Только не удивляйся, но алгоритм Евклида еще проще:D


Ок. Вот реализация моеого алгоритма:

bool IsSimple(int N)
{
int d=1;
while(d++<sqrt(N))
{
if(N%d == 0)
return false;
}
return true;
}

Хочешь сказать что алгоритм Евклида еще проще?
Да кстати я может немного не по теме пишу, потому как алгоритм мой для определения простое ли число, а не определение двух взаимопростых

301
26 июня 2005 года
lord Kelvin
897 / / 08.11.2004
Цитата:
Originally posted by Matush
Хочешь сказать что алгоритм Евклида еще проще?
Да кстати я может немного не по теме пишу, потому как алгоритм мой для определения простое ли число, а не определение двух взаимопростых


Я возьму на себя смелость ответить тебе. Вот реализация алгоритма Евклида. (Правда он делает не совсем то, что твой=) )

 
Код:
int NOD(int A,int B)
{
 for(;A!=B;A-=B)if(A<B)
 {
  B^=A;
  A^=B;
  B^=A;
 }
 return A;
}
7.2K
26 июня 2005 года
koder
24 / / 09.05.2005
Вот мой вариант
function nod(a,b: integer) : integer
begin
while a<>b do
begin
if a>b then a=a-b;
else
b=b-a;

end;
nod=a;
end;
292
29 июня 2005 года
Matush
726 / / 14.01.2004
[QUOTE]Originally posted by lord Kelvin
Я возьму на себя смелость ответить тебе. Вот реализация алгоритма Евклида. (Правда он делает не совсем то, что твой=) )

Да, признаю, был в чем то неправ (хотя алгоритмы делают не одинаковые весчи :))))
301
29 июня 2005 года
lord Kelvin
897 / / 08.11.2004
Цитата:
Originally posted by Matush
[QUOTE]Originally posted by lord Kelvin
Я возьму на себя смелость ответить тебе. Вот реализация алгоритма Евклида. (Правда он делает не совсем то, что твой=) )

Да, признаю, был в чем то неправ (хотя алгоритмы делают не одинаковые весчи :))))


Ты ни чем не ошибся, и был прав. Так как во-первых твой код работающий, а во-вторых мы не спорили.=)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог