- 225 名前:デフォルトの名無しさん [2008/06/17(火) 01:14:36 ]
- 2つの数の最大公約数を出すプログラミングを書いていたのですが、どうしてもうまくいきません
どこが悪いか教えてもらえませんか? どんな値を入れても18000みたいな数字が出てきてしまいます。。。 お願いします #include<stdio.h> int gcd(int m,int n) /*二つの自然数の最大公約数を返す*/ { int i; if(m > n) {for(i =m; i==1; i--) {if( (m%i)==0 && (n%i)==0 ) return i; }} else if (m < n) {for(i =n; i==1; i--) {if( (m%i)==0 && (n%i)==0 ) return(i); } } } int main(void) { int x, y; puts("二つの自然数を入力してください。"); printf("自然数1:"); scanf("%d", &x); printf("自然数2:"); scanf("%d", &y); printf("二つの自然数の最大公約数は%dです。 \n", gcd(x ,y)); return(0); }
|

|