2014-02-26 287 views
-4

我需要計算while循環運行的次數以及在所述while循環量之後支付了多少總利息。while循環Java

問題是利率和對債務的支付。教授讓我們編寫主要的所有代碼。 「您剛購買了立體聲系統,購買以下信用卡 計劃支付$ 1,000美元的立體聲系統:無首期支付,每年18%的利率(因此爲每月 月的1.5%)以及每月支付50美元。 50美元用於支付利息,剩下的部分用於支付部分剩餘債務 因此,第一個月支付利息的1000美元的1.5%,即利息15美元 因此,其餘的從您的債務中扣除35美元,這會使您的債務爲 $ 965.00。下個月,您支付利息爲965.00美元的1.5%,即$ 14.48 因此,您可以從中扣除$ 35.52(即$ 50 - $ 14.48)你欠的金額 寫一個程序,告訴你需要支付多少個月o以及貸款的貸款總額,以及貸款期限內支付的利息總額。使用循環 計算每月之後的利息金額和債務規模。 (您的 最終計劃不需要輸出每月支付的利息金額和剩餘的 債務,但您可能希望編寫一個輸出 這些值的程序的初始版本。)使用變量來計算循環迭代次數,並因此, 直到債務爲零的月數。您可能需要使用其他變量,如 。如果債務很少,最後的付款可能低於50美元,但不要忘記 的利息。如果您欠50美元,您的每月50美元的付款將不會還清您的債務,儘管它會接近。一個月上50 $利息只有75美分「

public static void main(String args[]){ 
    double startCredit = 1000; 
    double interestRate = .015; 

    double payInterest = startCredit * interestRate; 
    double payDebt = startCredit - payInterest; 
    double paid = payInterest + payDebt; 
    double newCredit = 965.0; 

    while (newCredit > 0){ 
     double totalPaidInterest = 0; 
     payInterest = newCredit * interestRate; 
     payDebt = newCredit - payInterest; 
     paid = payInterest + payDebt; 
     newCredit = newCredit - paid; 
     totalPaidInterest += payInterest; 
     System.out.println("Total paid interest: " + totalPaidInterest); 

    } 
+4

是什麼TJE問題???? – Kick

+0

你忘了請提出問題:D –

+0

請嘗試制定一個問題 – Christian

回答

1

要計算while循環已經跑了,只是計數他們:

public static void main(String args[]) { 
    double startCredit = 1000; 
    double interestRate = 0.015; 

    double payInterest = startCredit * interestRate; 
    double payDebt = startCredit - payInterest; 
    double paid = payInterest + payDebt; 
    double newCredit = 965.0; 

    int count = 0; // <- While loop counter 
    double totalPaidInterest = 0.0; // <- Total should be outside the loop 

    while (newCredit > 0) { 
     payInterest = newCredit * interestRate; 
     payDebt = newCredit - payInterest; 
     paid = payInterest + payDebt; 
     newCredit = newCredit - paid; 
     totalPaidInterest += payInterest; 

     // You'd probably don't want to print out TOTAL values at each itteration 
     //System.out.println("Total paid interest: " + totalPaidInterest); 

     count += 1; 
    } 

    System.out.print("Total paid interest: "); 
    System.out.println(totalPaidInterest); 

    System.out.print("Loops: "); 
    System.out.println(count); 
    } 
+0

出現爲「count + = 1」的編譯錯誤;「部分 – user3354429

+0

@ user3354429:」count + = 1;「是正確的,因此請檢查y我們的代碼;看到我的編輯:我已經把主要功能,因爲它應該是沒有任何遺漏。 –

+0

它的工作原理,但它算錯了。它只輸出到while循環的「1」運行 – user3354429