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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.88
MoSanya
6 / 6 / 0
Регистрация: 16.10.2011
Сообщений: 226
#1

Вычисление НОД двух натуральных чисел (рекурсия) - C++

03.05.2012, 12:28. Просмотров 3446. Ответов 21
Метки нет (Все метки)

День добрый, помогите пожалуйста поправить данную прогу, надо бы избавиться от меток, короче говоря, сократить строки.

Вот сама задачка.

Составить программу нахождения НОД двух натуральных чисел
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
    #include <conio.h>
    #include <math.h>
    void main()
    {
 
     int b, m, n, r, k, k1;
     clrscr();
     printf("\n Vvedite 1-oe chislo: -->   "); scanf("%i",&m);
     printf("\n Vvedite 2-oe chislo: -->   "); scanf("%i",&n);
     m=abs(m);
     n=abs(n);
     if(m==0 && n==0)
     {
    printf("NEVERNYI VVOD \n\n");
//======================================
     goto v2;     }
 
     if(n>m)
     {
     b=n;
     n=m;
     m=b;
     }
 
     r=n%m;
     if(r==0)
     {
     printf("\n NOD(m,n)= %i", r);
     goto v2;
     }
    v1: k=m%r;
     if (k>0)
     {
     k1=r%k;
     r=k;
     k=k1;
    goto v1;
     }
     printf("\nNOD(m,n)= %i", r);
 
    v2: printf("\nNazhmite lubuyu klavishu");
 
     getch();
     }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2012, 12:28     Вычисление НОД двух натуральных чисел (рекурсия)
Посмотрите здесь:
Вычисление НОД ряда натуральных чисел C++
Вычисление нок и нод переменных натуральных чисел C++
Последовательность натуральных чисел, вычисление их НОД методом Евклида C++
C++ Подправить код. НОД двух натуральных чисел
Нод для двух натуральных чисел с циклом for C++
C++ Вычислить НОД (наибольший общий делитель) двух натуральных чисел A и B
Используя функцию нахождения НОД двух натуральных чисел, сократить обычную дробь C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
03.05.2012, 17:20     Вычисление НОД двух натуральных чисел (рекурсия) #21
Да, как Вы видите, в функции при определенном условии ( в данном случае если y != 0 ) вызывается сама функция.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2012, 17:24     Вычисление НОД двух натуральных чисел (рекурсия)
Еще ссылки по теме:
C++ Найти наибольший общий делитель (НОД) двух введенных натуральных чисел, используя алгоритм Евклида
C++ Рекурсия: вычисление НОД
C++ Написать функции рекурсивной и не рекурсивной реализации алгоритма Евклида нахождения наибольшего общего делителя (НОД) двух натуральных чисел
Рекурсия: сложение, вычитание, деление и вычисление остатка от деления двух целых чисел C++
Найти НОД четырех натуральных чисел C++

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

Или воспользуйтесь поиском по форуму:
MoSanya
6 / 6 / 0
Регистрация: 16.10.2011
Сообщений: 226
03.05.2012, 17:24  [ТС]     Вычисление НОД двух натуральных чисел (рекурсия) #22
Toshkarik, а, ну значит я все нормлаьно сделал, не без вашей помощи. Спасибо тогда всем большое. Взрыв мозга закончен
Yandex
Объявления
03.05.2012, 17:24     Вычисление НОД двух натуральных чисел (рекурсия)
Ответ Создать тему
Опции темы

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