0

Javaで、数学の宿題をするプログラムを作成しようとしています(実際にチートするのではなく、Javaを学ぼうとしているだけです)、指定された数値のすべての要素を取得するforループがありますが、わかりませんfor ループのすべての出力をペアで (可能であれば) 保存して、後で数学の問題をテストして解決する方法を次に示します。コードは次のとおりです。(リクエストに応じて必要な情報を追加します。最初の投稿)

import java.util.Scanner;

public class factoring {

public static void main(String[] args) {
    String varible;
    String secondOperator;
    String firstOperator;
    int power;
    int greatestCommonFactor;
    long factorTo;
    long factorBy;
    String factors = null;
    Scanner userInput = new Scanner(System.in);

    System.out.println("Please enter the greatest common factor (Default to 1)");
    greatestCommonFactor = userInput.nextInt();

    System.out.println("Please input the varible");
    varible = userInput.next();

    System.out.println("Please enter the power");
    power = userInput.nextInt();

    System.out.println("Please enter the first operator");
    firstOperator = userInput.next();

    System.out.println("Please enter what your factoring to");
    factorTo = userInput.nextInt();

    System.out.println("Please enter the second operator");
    secondOperator = userInput.next();

    System.out.println("Please enter what you're factoring by");
    factorBy = userInput.nextInt();

    for(int i = 1; i * i <= factorBy; i++) {
        if (factorBy % i == 0) {
            if (i * i != factorBy) factors = factorBy / i + " and " + i;
        } 
    }

}

}
4

2 に答える 2

0

file を使用して結果を保存できます。

次のコードを試してください

String  loc = "Desktop/Factors of "+factorBy;
File outFile = new File(loc);

if(!outFile.exists())
{
    outFile = new File(loc);
}
try{

    fout = new FileOutputStream(outFile);
}
catch(Exception e){
    e.printStackTrace();
}


for(int i = 1; i * i <= factorBy; i++) {
    if (factorBy % i == 0) {
        if (i * i != factorBy){
            factors = factorBy / i + " and " + i;


            try{
                fout.write(factors.getBytes());
                fout.write("\n".getBytes());

            }
            catch(Exception e)
            {
                e.printStackTrace();
            }

            System.out.println("factors:"+factors);
        }
    } 
}
于 2016-02-10T07:44:42.153 に答える