私は現在、ローンからの単純な金利と毎月の支払いを計算するプログラムに取り組んでいます。しかし、私は1つのかなり大きな問題に直面しています。私の主値(コードを参照)が新しい残高(コードを参照)の値に再割り当てされるようにしようとしています。これが今の私のコードです、私はその下でより詳細に説明します:
import java.util.Scanner;
public class Payments {
public static double principal; //principal
public static double annualrate; //annual interest rate
public static double p; //monthly payment
public static double mr; //monthly interest rate
public static double nb; //new balance after monthly payments
public static double i; //interest (monthly)
public static String spaces = " "; //spaces for making clean columns
public static int months = 12;
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("Principal: $");
principal = input.nextDouble();
System.out.println("Anual Interest Rate: ");
annualrate = input.nextDouble();
System.out.println("Monthly Payment: $");
p = input.nextDouble();
calculate();
}
public static void calculate() {
mr = annualrate / 12;
i = mr * p;
nb = principal + i - p;
System.out.print("Month Principal Amt. Interest Payment New Balance");
System.out.println();
System.out.println();
for(int x = 1; nb > 0; nb = principal + i - p){
System.out.println(x + spaces + p + spaces + i + "%" + spaces + "$" + p + spaces + "$" + nb);
p = (Double)null;
p = nb;
}
}
}
したがって、コード内のコメントからわかるように、すべての変数が表示されます。さて、nullを無視して、それをdoubleにキャストします。これは、皆さんに尋ねる前に最後にやろうとしたことだからです:)とにかく、最後の質問は、principalの値を自分に再割り当てするにはどうすればよいかということです。ニューバランス(nb)?また、副次的な質問ですが、この種のプログラムにはwhileループの方が適しているでしょうか。