public class Fraction {
private int numerator;
private int denominator;
public Fraction(int numerator, int denominator) {
this.numerator = numerator;
this.denominator = denominator;
}
public int getNumerator() {
return numerator;
}
public int getDenominator() {
return denominator;
}
}
public class GradeUtils {
public static Fraction convertToFraction(BigDecimal decimal) {
int scale = decimal.scale();
int denominator = (int) Math.pow(10, scale);
int numerator = decimal.multiply(new BigDecimal(denominator)).intValue();
int gcd = gcd(numerator, denominator);
numerator /= gcd;
denominator /= gcd;
return new Fraction(numerator, denominator);
}
public static int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
public static void main(String[] args) {
BigDecimal bigDecimal = new BigDecimal(234);
BigDecimal bigDecimal1 = new BigDecimal(30);
BigDecimal divide = bigDecimal.divide(bigDecimal1, 2, BigDecimal.ROUND_HALF_UP);
Fraction fraction = convertToFraction(divide);
System.out.println(fraction.getNumerator()+"/"+fraction.getDenominator());
}
}