문제의 코드
package algo;
public class Gcd04 {
static int gcd(int a, int b) {
while (true) {
int c = a % b; // 6 = 18 % 12
a = b; // a = 12
b = c; // b = 6
if (c == 0) {
break;
}
}
return a;
}
public static void main(String[] args) {
System.out.println("두 수의 최대공약수는 : " + gcd(a, b));
}
}
결과

해결
package algo;
public class Gcd04 {
static int gcd(int a, int b) {
while (true) {
int c = a % b; // 6 = 18 % 12
a = b; // a = 12
b = c; // b = 6
if (c == 0) {
break;
}
}
return a;
}
public static void main(String[] args) {
int a = 52;
int b = 18;
System.out.println("두 수의 최대공약수는 : " + gcd(a, b));
}
}
이유
int a
와 int b
에 값을 지정하지 않아서 불러오지 못함Share article