ここで私は何をしようとしています。私はあなたの参照のために自分の目標の下に自分のコードを含めました。追加の代数を使ったJava Primeの因子分解
目標:数値nの素因数分解を求める。次に、素因数を1つの数xに連結します。その数xをとり、nで割ります。 x%n = 0の場合、Trueを出力します。 x%n!= 0の場合、falseを出力します。 (つまり、n = 100なら素因数は2,2,5,5、整数は2255になり、次に2255/100を取る、2255%100!= 0、Print False)
私は今プリントしています。 "2 2 5 5"と出力し、すべての素因数を正しく入力します。
可能であれば、理想的には、私が設定した上限を使って数値k = 2に対して実行したいと思います。上界U、そしてk = 2からUまでの任意の値が(上から)真である結果をもたらすならば、そのk値を出力したいと思います。
import acm.program.*;
import acm.util.*;
import java.util.Scanner;
// -------------------------------------------------------------------------
public class Factors extends ConsoleProgram
{
//~ Instance/static variables .............................................
private RandomGenerator rgen = RandomGenerator.getInstance();
//~ Constructor ...........................................................
// ----------------------------------------------------------
/**
* Creates a new ForLoops object.
*/
public void run()
{
int n = 100;
println("The prime factorization of " + n + " is: ");
// for each potential factor i
for (int i = 2; i*i <= n; i++) {
// if i is a factor of N, repeatedly divide it out
while (n % i == 0) {
n = n/i;
print(i+" ");
//print(i/n);
}
}
// if biggest factor occurs only once, n > 1
if (n > 1) println(n);
else println();
}
}
あなたの問題は何ですか?あなたはあなたが苦しんでいる本当の問題を述べていません。 – HopefullyHelpful