2014-02-11 9 views
-4

올바른 코드를 올바르게 출력하는 방법을 잘 모르겠습니다. 여기에 내가 무엇을 가지고 지금까지Java 변수가 초기화되지 않았을 수 있습니다.

import java.util.Scanner; 
public class ComputeTax { 
    public static void main(String[] args) { 
     System.out.print("Taxable Income Single  Married Jointly  Married Seperate  Head of House"); 
     System.out.print("\n\n-----------------------------------------------------------------------------------"); 
     int status; 
     double income; 
     double tax = 0; 
     for(income = 50000; income <= 60000; income+=50) 
     { 
      if (status == 50000) 
      { 
       if (income <= 8350) 
        tax = income * 0.10; 
       else if (income <= 33950) 
        tax = 8350 * 0.10 + (income - 8350) * 0.15; 
       else if (income <= 82250) 
        tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + 
        (income - 33950) * 0.25; 
       else if (income <= 171550) 
        tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + 
        (82250 - 33950) * 0.25 + (income - 82250) * 0.28; 
       else if (income <= 372950) 
        tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + 
        (82250 - 33950) * 0.25 + (171550 - 82250) * 0.28 + 
        (income - 171550) * 0.33; 
       else 
        tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + 
        (82250 - 33950) * 0.25 + (171550 - 82250) * 0.28 + 
        (372950 - 171550) * 0.33 + (income - 372950) * 0.35; 
      } 
      else if (status == 1) { // Compute tax for married file jointly 
       // Left as exercise 
      } 
      else if (status == 2) { // Compute tax for married separately 
       // Left as exercise 
      } 
      else if (status == 3) { // Compute tax for head of household 
       // Left as exercise 
      } 


      // Display the result 
      System.out.println("Tax is " + (int)(tax * 100)/100.0); 
     } 
    } 
} 

샘플 출력은 다음과 같습니다

Taxable Income  Single  Married  Married Seperate   Head of House 
50000     8688  6665  8688      7352 
50050     8700  6673  8700      7365 
... 
59950     11175  8158  11175     9840 
60000     11188  8165  11188     9852 

나는 나의 "루프"난 그냥 내 계산에 대해 확실하지 오전 그들 모두를 인쇄하는 방법을 정확 생각 . 현재, 오류가 발생합니다 :

+1

무엇이 질문입니까? 현재 산출물의 예를 들려 줄 수 있습니까? –

+0

변수 상태가 초기화되지 않았 음을 나타내는 "if 문"으로 인해 오류가 발생했습니다 – Tanner10

+4

@ Tanner10 Google에서 첫 번째 링크가 "java 초기화되지 않았습니다."http://stackoverflow.com/questions/2448843/variable- 초기화되지 않은 오류 – sashkello

답변

0

'for'루프에는 상태 정수 변수를 사용하는 'if'문이 있습니다. status == 50000과 같은 상태 값으로 수치 값을 계산하지만 실제로 상태 변수에 값을 입력하지 마십시오. 형식은 초기화했지만 값은 초기화하지 않았습니다.

status = 18000; 

또는 for 루프 앞에 넣으십시오.

호프 나는 도와주었습니다. 저스틴

+0

감사합니다. 내 int 상태 = 18000 및 내 if (상태 == 50000) 넣습니다. 그리고 그것을 컴파일하지만, 내 샘플 출력에서처럼 보이게하고 싶은 것을 출력 할 수없는 것 같습니다. – Tanner10

+0

@ Tanner10 : 요를 추가 할 수 있습니까? ur 코드와 게시물 (ideone.com)의 현재 출력을 확인 하시겠습니까? 또한 18000은 완전히 임의의 숫자입니다. 당신이 가지고있는 if 문으로 실제로 컴파일 할 무언가를 추가하거나, 더 많은 범위를 갖는 불평등 성명을 가진 else if 문을 추가하십시오. –

+0

확실한 계정을 만들어 보겠습니다. – Tanner10

관련 문제