1

こんにちは、私はここで SW に取り組んでいます。ちょっと助けが必要です。分数を単純化するメソッドを作成する必要があることがわかります。方法はありますか?これが今の私のコードです(dvalueメソッドは気にしないでください。すでに終わっています。必要なのは単純化メソッドだけです)

public class Fraction {

    public int num;
    public int den;
    public double dValue;

    public void display()
    {
        System.out.println("Numerator: "+num);
        System.out.println("Denominator: "+den);
    }

    public double dValue()
    {
        dValue = (double)num/den;
        return dValue;
    }


}

public class FractionTest {

        public static void main(String args[])
        {
            Fraction f = new Fraction();
            f.num = 50;
            f.den = 100;
            f.display();

            double d = f.dValue();
            System.out.println(d);
        }   
}
4

2 に答える 2

7

次の手順に従うことができれば、分数の単純化は簡単です。

  1. num と den の両方の gcd を見つけるので、gcd=GCDFind(gcd, num); となります。
  2. 現在、gcd==1 の場合、分数は簡約できません (すでに簡約形式になっています)。
  3. gcd > 1 の場合、newNum = num/gcd; および newDen = den/gcd;

必要なのはそれだけだと思います。

gcd は Greates Common Divisor の略です...コードは簡単に見つかります。JavaScript の実装を数秒でこのように動作させることができます: http://www.calculla.com/en/fraction

于 2011-07-30T10:48:04.367 に答える
0

これらのリンクをご覧ください。役立つ場合があります

  1. http://www.daniweb.com/software-development/java/threads/13663
  2. http://www.dreamincode.net/forums/topic/64342-reducing-a-fraction/
  3. Java での分数の単純化

などなど..

于 2011-07-30T11:18:38.297 に答える