3

私はとても新しいです。コーディングについて事前にお詫び申し上げます。年を表示し、次にタブを表示し、次に値を次の行で表示するテーブルを印刷する必要があります。値は10進形式である必要があります。私は自分のコードを読んで検索し、混ぜ合わせてきました。1つの変数で見つかりましたが、同じ行の2つの変数では見つかりませんでした。printfを試しましたが、良いol 100 / 100.0を試しましたが、エラーが発生するか、小数点以下2桁になりません。丸みを帯びる必要はありません。あと2スペースだけです。私は明らかにどこかで間違っています。何か助けていただければ幸いです。java.util.Scannerをインポートします。

public class Investment1 {

public static double futureInvestmentValue(double investmentAmount, double monthlyInterestRate, int years){

double principal = 0.0;
double futureInvestmentValue = 0;
for (years = 1; years <=30; years++){
    //calculate futureInvestmentValue
    futureInvestmentValue = (investmentAmount * (Math.pow (1 + monthlyInterestRate, years * 12)));
    System.out.print(years + "\t" + futureInvestmentValue + "\n");

}//end for
    return futureInvestmentValue;
}//end futureInvestmentValue

public static void main(String[] args){

    Scanner input = new Scanner (System.in);

    //obtain Investment amount
    System.out.print("Enter Investment amount: ");
    double investmentAmount = input.nextDouble();

    //obtain monthly interest rate in percentage
    System.out.print("Enter annual interest rate in percentage: ");
    double annualInterestRate = input.nextDouble();
    double monthlyInterestRate = (annualInterestRate / 1200);

int years = 30;

System.out.println("Years\t" + "Future Value");
System.out.print(years + "\t");
System.out.print(years + "\t" + ((int)(futureInvestmentValue(investmentAmount, monthlyInterestRate, years))) + "\n");

}//end main
}//end Investment
4

2 に答える 2

1

system.out.format()を使用できます:

System.out.format("%d \t %.2f", years, futureInvestmentValue);
于 2013-02-26T16:39:41.553 に答える
0

フォーマット文字列について読む必要があります。簡単な使用例を次に示します。

System.out.println(String.format("%d %.2f",myint,myfloat));

myint%dフォーマット文字列でを使用しているため、整数として出力されます(浮動小数点値であっても) 。フォーマット文字列
myfloatの一部のおかげで、小数点以下2桁の10進数として出力されます。%f.2

于 2013-02-26T16:36:16.160 に答える