저는 Java에 대한 (초보) 초보자이며 월별 대금 지불 테이블을 인쇄하는 간단한 프로그램을 작성하고 있습니다. 나는 아래로 형식을 가지고 있지만 중첩 된 루프 계산은 내 머리 위로 가고있다. 나는 $ 50의 월간 지불액과 $ 1000의 초기 대출에서 사용자가 물어 본 금리를 공제 할 수 있어야합니다.중첩 for 루프 계산과 관련된 문제
내가 지금까지 시도한 모든 것은 무한 루프 또는 매우 첫 번째 잔액 계산이 12 개월 동안 모두 인쇄되었습니다.
이것은 매우 분명한 질문 일 뿐이지 만 모든 의견을 보내 주시면 감사하겠습니다. for 루프는 나에게 매우 직관적이지 못하며,이 동일한 코드 비트를 쳐다 보면서 나의 진행이 멈췄습니다!
(.....)
//this method prompts the user to enter the annual interest rate and then prints it
//along with the initial loan, monthly payment, and a simple loan payment table for
//one year
private static void simpleLoanPaymentTable() {
Scanner CONSOLE = new Scanner(System.in);
double annualInterestRate;
double initialLoan = 1000.0;
double monthlyPayment = 50.0;
System.out.println("Please enter the annual interest rate:");
annualInterestRate = CONSOLE.nextDouble();
double percentAnnualRate = (annualInterestRate/100);
double percentMonthlyRate = (percentAnnualRate/12);
System.out.println();
System.out.println("The initial loan is $1000.0");
System.out.println("The monthly payment is $50.0");
System.out.println("The annual interest rate is " + annualInterestRate + "%");
System.out.println();
System.out.println("Simple Loan Payment Table For One Year");
System.out.println();
System.out.println(" Month Balance");
//create 12 rows for the months
for(int row = 1; row <= 12; row++) {
//calculate monthly balance
for(double i = 0; i <= initialLoan; i++) {
i = (initialLoan-monthlyPayment+(initialLoan*percentMonthlyRate));
System.out.println(" " + row + " " + i);
}
}
System.out.println();
}
좋은 조언 나는 그것이 그냥과 복잡함을 결국 때 코드를 단순화 할 루프에 대한 두 번째 퍼팅 생각하는 이유, 나도 몰라. 그것을 종이에 집어 넣고 계산으로 작업하면 혼란이 해결됩니다. 당신의 도움을 주셔서 감사합니다. – immoraliszt