ユーグリッドの互除法を用いて、最大値を求めるときってなぜ以下の関数だとダメな時が生じて来るのですか?
c
1int yugurid(int number1, int number2) /*ユーグリッドの互除法による最大公約数*/ 2{ 3 int r, a, b; 4 5 if (number1 < number2){ 6 a = number1; 7 b = number2; 8 } 9 else { 10 a = number2; 11 b = number1; 12 } 13 14 r = b % a; 15 16 while (r != 0) 17 { 18 a = b; 19 a = r; 20 r = b % a; 21 } 22 return a; /* a = 最大公約数 */ 23}```
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。