2017-09-09 16 views
0

私はテストを行っていますので、できるだけ多くの問題を解決しようとしていますが、どうして私が得られるのか分かりませんこのコードからWindowsフォームアプリケーションの出力として "c"を使用します。誰かが助けてくれればそれを感謝します。Visual Basic Tax Calculatorで正しい出力を得ることができません

スペースのないたぶん
Private Sub btnCompute_Click(sender As Object, e As EventArgs) Handles 
btnCompute.Click 
     Dim income, tax As Double 

     income = txtIncome.Text 

     Select Case income 
     Case Is > 9225 
      tax = income * 0.1 
     Case Is > 37450 
      tax = 922.5 + 0.15 * (income - 9225) 
     Case Is > 90750 
      tax = 5617.5 + 0.25 * (income - 37450) 
     Case Is > 189300 
      tax = 22687.5 + 0.28 * (income - 90750) 
     Case Is > 411500 
      tax = 53004 + 0.33 * (income - 189300) 
     Case Is > 413200 
      tax = 135795 + 0.35 * (income - 411500) 
     Case Is < 413200 
      tax = 144620 + 0.396 * (income - 413200) 
    End Select 

    txtTax.Text = String.Format("{0: C}", income) 
End Sub 
+0

プロジェクトの設定を 'Option Strict On'に設定するか、コードファイルの最初の行に" Option Strict On "と書くと、コンパイラの助けを借りて、正しいアプローチに導くことができます – Fabio

+0

' txtTax.Text = String.Format( "{0:C}"、income) 'は結果を" C "として表示しなくなります。しかし、あなたのコードが正しいと確信していますか?私はそれを試したが、それは計算をしなかった – Subaz

答えて

3

txtTax.Text = String.Format("{0:C}", tax) 
1

書かれたとして打つことができる唯一のcase文は> 9225と< 413200です(わからない理由でもあります)。あなたは、ケースステートメントの順序を反転する必要があります。

Private Sub btnCompute_Click(sender As Object, e As EventArgs) Handles btnCompute.Click 
    Dim income, tax As Double 

    income = txtIncome.Text 

    Select Case income 
     Case Is > 413200 
      tax = 144620 + 0.396 * (income - 413200) 
     Case Is > 411500 
      tax = 135795 + 0.35 * (income - 411500) 
     Case Is > 189300 
      tax = 53004 + 0.33 * (income - 189300) 
     Case Is > 90750 
      tax = 22687.5 + 0.28 * (income - 90750) 
     Case Is > 37450 
      tax = 5617.5 + 0.25 * (income - 37450) 
     Case Is > 9225 
      tax = 922.5 + 0.15 * (income - 9225) 
     Case Else 
      tax = 0.1 * income 
    End Select 

    txtTax.Text = String.Format("{0:C}", tax) 
End Sub 

また、あなたは2015税テーブルを使用しているようです。あなたの定数は加算されません。 (私のせいかもしれない)。

関連する問題