데이터 유효성 확인으로 대출 계산을 작성했습니다. 내 최대 대출 금액은 1,000,000이며 아래 유효성 확인을 위해이 방법을 사용하고 있습니다. 내가 프로그램에 1,000,000을 입력하면 오류 메쏘드가 다시 나타난다. 내 생각에 (d> = 최대) 내 최대까지 올라갈 수있게 해줄 것이다. 누구나이 방법으로 문제를 볼 수 있습니까? 아니면 문제의 코드에서 다른 부분을 찾아야 할 수도 있습니다.데이터 유효성 검사
도움을 주시면 감사하겠습니다.
public static double getDoubleWithinRange(Scanner sc, String prompt, double min, double max)
{
double d = 0.0;
boolean isValid = false;
while (isValid == false)
{
d = getDouble (sc, prompt);
if (d <= min)
{
System.out.println(
"Error! Number must be greater than " + min + ".");
}
else if (d >= max)
{
System.out.println("Error! Number must be less than " + max + ".");
}
else
isValid = true;
}
return d;
// 사용자 의 입력을 받기에서 System.out.println ("데이터 입력"); double loanAmount = getDoubleWithinRange (sc, "대출 금액 입력 :", 0, 1000000); double interestRate = getDoubleWithinRange (sc, "연간 이자율 입력 :", 0, 20); int years = getIntWithinRange (sc, "연도 수 입력 :", 0,100);
일부 입력 및 출력 표시 (이상적으로 콘솔 창에서 복사/붙여 넣기); 또한이 메서드를 호출하는 코드와 전달되는 값을 보여줍니다. –
대출 계산기에 오신 것을 환영합니다 DATA ENTRY 대출 금액 입력 : 1000000 오류! 숫자는 1000000.0보다 작아야합니다. 대출 금액 입력 : –
죄송합니다. 원래 질문 이외의 코드를 게시하는 방법을 모르겠다. –