-
如果b等于0,计算结束,a就是最大公约数
-
否则,计算a除以b的余数,让a等于b,b等于那个余数
-
回到第一步
import java.util.Scanner;
import static java.lang.System.out;
public class Main {
public static int f(int a,int b){//求公约数,辗转相除法
int count = 0;
for(int i=1;i<=Math.min(a, b);i++){
if(a%i==0&&b%i==0){
count = i;
}
}
return count;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.next();
String[] num = s.split("/");//切割字符串
int a = Integer.parseInt(num[0]); //string 转 int
int b = Integer.parseInt(num[1]);
System.out.println(a/f(a,b)+"/"+b/f(a,b));
}
}
网友评论