Итак, для этого я, кажется, получаю только «Бесконечность» за долларовое количество вывода. Я думаю, что это имеет какое-то отношение к математике. (Не обращайте внимания на неряшливый код, мне сказали отлаживать его, не изменяя его слишком сильно). Это единственная проблема, с которой я, похоже, сталкиваюсь. Помимо этого все остальное работает нормально.Как получить правильный результат?
/* Chapter 3 Debugging Assignment
*Programmer:
*Date:
*Program Name: Bert,java
*Purpose:
*/
import java.util.Scanner;
public class bert {
public static void main(String[] args) {
//Declaring Variables
int price, downPayment, tradeIn, months, loanAmt, interest;
double annualInterest, payment;
String custName;
Scanner reader = new Scanner(System.in);
//Get Input from User
System.out.println("What is your first name? ");
custName = reader.next();
System.out.print("What is the price of the car? ");
price = reader.nextInt();
System.out.print("What is the downpayment? ");
downPayment = reader.nextInt();
System.out.print("What is the trade-in value? ");
tradeIn = reader.nextInt();
System.out.print("For how many months is the loan? ");
months = reader.nextInt();
System.out.print("What is the decimal interest rate? ");
annualInterest = reader.nextDouble();
//Output
calculatePayment(price, downPayment, tradeIn, (int) annualInterest, months);
}
public static void calculatePayment(int price, int downPayment, int tradeIn,
int months, double annualInterest) {
double interest;
int loanAmt;
double payment;
//Calculations
interest = (double) annualInterest/ (double) 12 ;
loanAmt = (int) (price - downPayment - tradeIn);
payment = loanAmt/((1.0/interest) - (1.0/(interest * Math.pow(1.0, annualInterest))));
String custName = "Any Name";
System.out.print("The monthly payment for ");
System.out.print(custName + " is $ ");
System.out.println((double) payment);
return;
}
}
@MadProgrammer на самом деле он этого не делает. Следующий вызов пропустит новую строку. – immibis
Скажите мне @panzo, почему вы передаете процентную ставку (конвертируется в 'int', поэтому с десятичной частью отрубается), как количество месяцев, и количество месяцев в качестве процентной ставки? – immibis
@immibis Знаешь, я действительно ненавижу «Сканер» – MadProgrammer