我被大学强迫在Visual Studio(Basic)中执行应用程序,之前我从未使用过这种语言,所以我感到很困惑。我做了If
声明正在发挥作用,然后我添加了EleseIf
这也有效,但在我添加了第二ElseIf
之后它无法正常工作。似乎只有If
语句和第一个ElseIf
对我有效,但我需要的不只是1 ElseIf
语句。
Public Class receipt
Private Sub receipt_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim outputValue As Decimal = My.Settings.outputamount.Remove(4)
Dim calculation As Decimal = outputValue * My.Settings.inputamount
Dim totalwithoutcharge As String = calculation.ToString
customername.Text = "Name: " + My.Settings.Username
Label6.Text = "Entered Money: " + My.Settings.inputamount + " " + My.Settings.currency
Label7.Text = "Converted To: " + totalwithoutcharge + " " + My.Settings.outputcurrency
If calculation < 100 Then
Label8.Text = "Charge: 0%"
Label9.Text = "Total: " + totalwithoutcharge + " " + My.Settings.outputcurrency
ElseIf calculation > 100 Then
Label8.Text = "Charge: 1%"
Label9.Text = "Total: " + totalwithoutcharge + " " + My.Settings.outputcurrency
ElseIf calculation > 500 Then
Label8.Text = "Charge: 2%"
Label9.Text = "Total: " + totalwithoutcharge + " " + My.Settings.outputcurrency
ElseIf calculation > 1000 Then
Label8.Text = "Charge: 3%"
Label9.Text = "Total: " + totalwithoutcharge + " " + My.Settings.outputcurrency
Else
Label8.Text = "Something went wrong"
End If
End Sub
End Class
我已经输入了很多超过600的价值,而且仍在显示&#39;充电:1%&#39;它应该显示2%而不是。如果值高于1000,则仍会显示1%。但是当该值低于100时,则表示正常,并显示0%。
Over 100 works fine too Over 500 doesn't work
我也尝试过这两个条件,它会考虑范围,但它也不起作用。 我尝试了ElseIf计算&gt; 100&计算&gt; 500然后&#39;但没有区别。
答案 0 :(得分:2)
首先使用&amp;集中字符串时代替+。 第二,如果计算是> 500它也大于100,200等。所以你需要实现一个范围。所以想想逻辑。
答案 1 :(得分:0)
根据我的评论
If calculation >= 1000 Then
ElseIf calculation >= 500 Then
ElseIf calculation >= 100 Then
Else
'lass than 100
End If