Алгоритм Евклида - правильно ли написана рекурсивная функция? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Помогите, правильно ли написана рекурсивная функция??
#include "stdafx.h"
#include <stdio.h>
int NOD(int a, int b);
int main(void)
{
    int x,y;
    scanf("%d",&x);
    scanf("%d",&y);
    printf("%d\n",NOD(x,y));
}
int NOD(int a, int b)
{
    while (a!=0 && b!=0)
    {
        if (a>b)
        {
            a=a%b;
            return a;
        }
        else b=b%a;
        
    return b;
    
    }
}

Решение задачи: «Алгоритм Евклида - правильно ли написана рекурсивная функция?»

textual
Листинг программы
int NOD(int a, int b)
{
    if (a == 0)
        return b;
    return NOD(b % a, a);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы