2014-09-29 3 views
-1

프로그램에서 생성 된 월별 모기지 금액을 계산하려고 시도하면서 Java 프로그래밍 클래스 할당 문제가 발생했습니다. 코드를 컴파일하려고하면 '기호를 찾을 수 없습니다. (이중)'오류가 발생합니다. 월별 이자율 계산 공식은 다음과 같습니다 -Math.pow-- 기호를 찾을 수 없습니까?

현재 이중 값을 볼 수 없다고 생각합니다. switch 문 밖에서는 문제가 무엇인지 잘 모르겠습니다. .;

도움 주셔서 감사합니다.

내 코드 :

import java.util.*; 


public class MorgageCalculator 
{ 
public static void main(String[]args) 
    { 
     Scanner s = new Scanner(System.in); 
     double principal = 0;//principle amount 
     int period =0;//number of years required to pay out mortgage 
     double inter =0; //interest rate 
     int amr =0;//monthly payments 
     char another ='y'; 
     double monthly=0; 
     String input; 
     System.out.println("Enter principle amount, value cannot be negative"); 
     principal=s.nextDouble(); 
     while(principal <=0){ 


      while(inter==0){ 
       System.out.println("Enter mortage term: (1,2,3,5,10)"); 
       period=s.nextInt(); 
      switch(period){ 
       case 1: 
       inter=3.5; 
       break; 
       case 2: 
       inter=3.9; 
       break; 
       case 3: 
       inter=4.4; 
       break; 
       case 5: 
       inter=5.0; 
       break; 
       case 10: 
       inter=6.0; 
       break; 
       default: 
       inter=0; 

      } 
      if(inter==0){System.out.printf("%f is not a valid period, please enter a new one \n",period); 
      } 
     } 
       System.out.printf("The inter rate for the term will be %.2f \n",inter); 
      while(amr==0){ 
       System.out.println("Enter morgage amortization period (5,10,15,20,25)"); 
      amr=s.nextInt(); 
       switch(amr){ 
        case 5: 
        amr= 5*12; 
        break; 
        case 10: 
        amr= 10*12; 
        break; 
        case 15: 
        amr= 15*12; 
        break; 
        case 20: 
        amr= 20*12; 
        break; 
        case 25: 
        amr= 25*12; 
        break; 
        default: 
        amr= 0; 
       } 
       if(amr==0){ 
        System.out.printf("%f is not a valid amortization period, please enter a new one."); 
       } 
      } 
inter=inter/100; 
monthly=(principal(Math.pow(inter(1+inter),amr))/(Math.pow(1+inter,amr)-1)); 

        } 

    } 

    } 
+1

inter*(1 + inter)로 교체, 링크가 아니라 링크가 없어 질 수 있으며, 링크는 큰 프로그램이나 프로그램을 보유 할 수 있습니다 (예 : 큰 자원 봉사자에게 검토를 요청하십시오.이 요청에 대한 귀하의 준수는 매우 높이 평가 될 것이며 더 빠르고 더 나은 도움을 얻는 데 도움이 될 것입니다. –

+0

여기에 코드를 게시하십시오 –

답변

0

간은 변수가 아닌 방법이다. 이 라인에서 당신은 방법으로 그것을 사용하려고 :. 당신은, 당신은 곱셈 연산자를 누락 monthly에 할당 할 경우 (마지막 라인에서

 monthly = (principal(Math.pow(inter(1 + inter), amr))/(Math.pow(
       1 + inter, amr) - 1)); 
1

을 관련 코드를 게시하시기 바랍니다 inter(1 + inter)

+0

정말 고마워요! :) 나는 그것이 어리석은 무엇인가 알고 있었다. – Krissyten

+0

@Krissyten - 도와 줘서 기쁩니다. 앞으로 컴파일러가 오류를 범했을 때 불평하는 행을 게시하면 여기에서 응답을받는 것이 도움이 될 것입니다. 또는 전체 코드를 게시하고 삽입 된 설명을 통해 또는 발췌하여 해당 줄을 지적하십시오. –

관련 문제