そうですね、私は前回のことをすべて書き直します。私はGCFとLCDの2つの数字を見つけるためのプログラムを作っています。基本の使い方:GCFとLCD
gcf = BigInteger.valueOf(x).gcd(BigInteger.valueOf(y)).intValue();
または2種類、差分法、残りの方法を持っているユークリッドのアルゴリズム:あるGCFを見つけるための方法があります。
すべての配列やメソッドを使用することはできません。制御構造と反復構造を使用する必要があります。
私は減算方法を行いましたが、そこには運がないので、残りの方法を試しました。
int iA = 0, iB = 0, iG = 0, iL = 0, iR = 0;
if(iA != iB){
if (iA > iB){
iR = iA % iB;
iG = iB/iR;
iL = (iA*iB)/iG;
}
else{
iR = iB % iA;
iG = iA/iR;
iL = (iA*iB)/iG;
}
System.out.println("The GCF is: " + iG);
System.out.println("The LCD is: " + iL);
}
else{
System.out.println("The GCF is: " + iA);
System.out.println("The LCD is: " + iA);
次に残りの方法は、剰余== 0の場合、最後の残りの値は2つの数のGCFであることを示唆しています。私はwhile
またはdo-while
構造を実行することを期待していますが、私は方法を考えることはできません。私のコードは間違った方法で入力しています。
First Number: 120
Second Number: 50
The GCF is: 2
しかし、それは次のようになります解決した場合は(120,50)のGCFは10でなければなりません:とにかく
iR = 120 % 50
iG = 50/20
、LCDは、2つの数の積た場合に獲得することができますGCFで分けられているので、GCFが見つからなければ忙しいです。
何かの助けがあれば幸いです。前もって感謝します!