#10367: 一直TEL該如何修正?


40475024H (108電機)


#include<stdio.h>

#include<math.h>

#include<limits.h>

int main(){

int a;

int b;

int c;

while(scanf("%d%d",&a,&b)!=EOF){

if(a%b==0){

printf("%d",b);

}

if(b%a==0){

printf("%d",a);

}

c=a;

while(c>=1){

if(a%c==0&&b%c==0){

 

printf("%d",c);

c--;}

else{

c--;

}

}

 

}

return 0;

}

#10582: Re:一直TEL該如何修正?


d2513850 (林勇智)


#include

#include

#include

int main(){

int a;

int b;

int c;

while(scanf("%d%d",&a,&b)!=EOF){

if(a%b==0){

printf("%d",b);

}

if(b%a==0){

printf("%d",a);

}

c=a;

while(c>=1){

if(a%c==0&&b%c==0){

 

printf("%d",c);

c--;}

else{

c--;

}

}

 

}

return 0;

}


直接使用輾轉相除法:
int gcd(int x,int y){/*使用輾轉相除法*/
    if(y==0){
        return x;
    }else{
        return gcd(y,x%y);
    }
}

另外在printf()使用gcd(x,y):

printf("%d\n",gcd(x,y));

#10583: Re:一直TEL該如何修正?


securenai (securenai)


a

#10584: Re:一直TEL該如何修正?


securenai (securenai)