コード
c言語
1無限ループとbreak文でユークリッドの互除法を作成したい 2このままだと最大公約数は表示されません。 3どこが間違っているのでしょうかお願いします。 4 5> 引用テキスト#include <stdio.h> 6 7#include <stdio.h> 8main() 9{ 10 int a, b, r, temp; 11 12 while( 1 ) { 13 printf( "2つの自然数を指定してください : " ); 14 if( scanf( "%d, %d", &a, &b ) != 2 ) break; 15 if( a < b ) { temp = a; a = b; b = temp; } 16 if( b < 1 ) continue; 17 18 //ユークリッドの互除法により最大公約数を求める 19 while( (r = a % b) != 0 ) { 20 a = b; 21 b = r; 22 } 23 printf( "最大公約数は%d\n", b ); 24 } 25}
回答1件
あなたの回答
tips
プレビュー