私は CS の割り当てに取り組んでおり、ユーザーが指定した成長率を指定して、時間の増分で銀行口座の金額を表す double の配列を出力する方法を理解するのに少し苦労しています。$のinitialAmount、growthRate、および時間間隔の数をユーザーに要求するメインメソッドがあります(初期量、成長率、および期間の数はiA、gR、およびnPで示されます)。このメソッドは、戻り値の型が double[] である別のメソッドを呼び出します。私の問題は、for ループ内のコードにあります。コンパイルは正常に行われますが、意味不明な出力になります。コードは次のとおりです。
import java.util.Scanner;
public class Benford {
public static double[] generateBenfordNumbers (double iA, double gR, int nP) {
double[] bankStatement = new double[nP];
for (int i = 0; i<nP; i++) {
bankStatement[i] = (iA*(Math.pow((1+(gR)), (i++))));
}
return bankStatement;
}
public static void main (String[] args) {
Scanner scan = new Scanner(System.in);
double iA;
double gR;
int nP;
System.out.print("What is the initial amount of money that you are starting with? : ");
iA = scan.nextDouble();
System.out.println();
System.out.print("What is the amount of growth per time period? : ");
gR = scan.nextDouble();
System.out.println();
System.out.print("How many time periods would you like to use? : ");
nP = scan.nextInt();
System.out.println();
generateBenfordNumbers(iA, gR, nP);
System.out.print(generateBenfordNumbers(iA, gR, nP));
}
}