1 solutions

  • 0
    @ 2024-12-10 23:49:12

    C :

    #include<stdio.h> 
    int Gcd(int a,int b); 
    int main() 
    { 
        int m,n; 
        scanf("%d,%d",&m,&n); 
        printf("%d\n",Gcd(m,n)); 
        return 0; 
    } 
    int Gcd(int a,int b) 
    {
    	if(a<=0||b<=0) return -1;
    	while(a!=b)
    	{
    		if(a>b)
    	        a=a-b;
    	    else if(b>a)
    	        b=b-a;
    	}
    	return a;
    } 
    

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int way(int a,int b)
    {
    	if (a>b)
    	return way(a-b,b);
    	else if(a<b) return(way(a,b-a));
    	else return a;
    }
    int main()
    {
    	int n,m;
    	cin>>n;
    	getchar();
    	cin>>m;
    	cout<<way(n,m);
    	return 0;
    }
    
    • 1

    【设计型】第7章:函数7.7(3) 递归法求最大公约数

    Information

    ID
    629
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    10
    Tags
    # Submissions
    4
    Accepted
    3
    Uploaded By