Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 114, средняя оценка - 4.74
PaZL
 Аватар для PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
#1

Нахождение НОД - C++

14.10.2011, 21:50. Просмотров 15172. Ответов 13
Метки нет (Все метки)

Здравствуйте, мне надо найти НОД чисел. Как это реализовать на языке C++ ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
14.10.2011, 21:53     Нахождение НОД #2
Линк
PaZL
 Аватар для PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
14.10.2011, 22:13  [ТС]     Нахождение НОД #3
я пробую, но у меня ничего не выводит на экран!
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
14.10.2011, 22:25     Нахождение НОД #4
PaZL, ну тогда код в студию. Или мы должны угадать, почему оно не работает?
Thinker
Эксперт C++
 Аватар для Thinker
4218 / 2192 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.10.2011, 09:38     Нахождение НОД #5
Алгоритмы нахождения НОД
PaZL
 Аватар для PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
15.10.2011, 12:45  [ТС]     Нахождение НОД #6
C++
1
2
3
4
5
6
7
8
9
long Nod(long a, long b)
{
    while (a && b)
        if (a >= b)
           a %= b;
        else
           b %= a;
    return a | b;
}
мне пишет
Код
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\libmingw32.a(main.o):main.c|| undefined reference to `WinMain@16'|
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
15.10.2011, 13:20     Нахождение НОД #7
PaZL, это мы и так поняли, полный код нужен и другие сведения. Где ваша функция main()? Какой у вас компилятор и тип проекта

Если б была Visual Studio, то на такую ошибку я б сказала, что у вас проект не того типа создан
diagon
Higher
 Аватар для diagon
1921 / 1187 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
15.10.2011, 13:23     Нахождение НОД #8
Цитата Сообщение от aeshes Посмотреть сообщение
PaZL, это мы и так поняли, полный код нужен и другие сведения. Где ваша функция main()? Какой у вас компилятор и тип проекта

Если б была Visual Studio, то на такую ошибку я б сказала, что у вас проект не того типа создан
Есть сильное подозрение, что это и есть полный код =)
PaZL
 Аватар для PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
15.10.2011, 13:26  [ТС]     Нахождение НОД #9
aeshes, у меня компилятор MinGW, IDE: CodeBlocks. Я новичок в C++, помогите составить полный код, чтобы выводила результат.
aeshes
 Аватар для aeshes
437 / 200 / 13
Регистрация: 07.10.2011
Сообщений: 462
15.10.2011, 13:26     Нахождение НОД #10

Не по теме:

diagon, я тоже подозревала, но хочется верить в хорошее в людях))



PaZL, в приведенных примерах есть только реализация метода поиска НОД. Чтобы посмотреть, как он работает, вам надо помимо этого создать еще функцию int main(), подключить нужные библиотеки, ввести 2 числа и вызвать для них функцию

примерно так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<iostream>
 
long Nod(long a, long b)
{
    while (a && b)
        if (a >= b)
           a %= b;
        else
           b %= a;
    return a | b;
}
 
int main()
{
   int a,b;
   std::cout<<"a=";
   std::cin>>a;
   std::cout<<"b=";
   std::cin>>b;
   std::cout<<Nod(a,b);
}
Nursik77
 Аватар для Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
15.10.2011, 13:28     Нахождение НОД #11
PaZL, а книжку открыть не вариант?
PaZL
 Аватар для PaZL
19 / 19 / 1
Регистрация: 18.02.2011
Сообщений: 292
15.10.2011, 13:50  [ТС]     Нахождение НОД #12
aeshes, спасибо все получилось!
Fozek
0 / 0 / 0
Регистрация: 27.07.2016
Сообщений: 1
08.01.2017, 18:54     Нахождение НОД #13
Ребят, объясните чайнику как работает return a | b; Я понимаю, что оно возвращает не равное 0 значение, но что это за выражение такое? Что это вообще за |. Впервые вижу.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2017, 19:40     Нахождение НОД
Еще ссылки по теме:

C++ Поменять нахождение min среди двумерного массива, на нахождение min в каждой сточке
C++ Нахождение НОД
Разработать класс "Cmp", обеспечивающий нахождение НОД и НОК двух чисел C++
Нахождение НОД числа, на основе канонического разложения C++
C++ НОД

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

Или воспользуйтесь поиском по форуму:
obivan
Падаван С++
 Аватар для obivan
285 / 198 / 52
Регистрация: 11.11.2014
Сообщений: 700
Завершенные тесты: 2
08.01.2017, 19:40     Нахождение НОД #14
Fozek, битовое или, почитайте про битовые операции
Yandex
Объявления
08.01.2017, 19:40     Нахождение НОД
Ответ Создать тему
Опции темы

Текущее время: 19:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru