大于,小于负数

时间:2015-06-05 20:20:04

标签: .net vb.net

您好我在vb.net中遇到大于小于函数的问题。它与正数一起完美无缺,但不适用于负数。这是我的代码,我希望这会有所帮助。

Dim A, B, input As Integer
A = (-38)
B = (-173)
txtD.Text = CStr(CInt(txtD.Text))
input = CInt(txtD.Text)

If input <= 32 < CInt(A) Then
    txtR.Text = "Water will freeze and Oxygen will boil at this Temperature"
ElseIf input <= CInt(A) > CInt(B) Then
    txtR.Text = "Water and Mercury will Freeze and Oxygen will boil at this temperature"
End If

2 个答案:

答案 0 :(得分:0)

不幸的是,您的代码在语法上是错误的:

If input <= 32 < CInt(A) Then
     txtR.Text = "Water will freeze and Oxygen will boil at this Temperature"
ElseIf input <= CInt(A) > CInt(B) Then
     txtR.Text = "Water and Mercury will Freeze and Oxygen will boil at this temperature"
End If

需要包含其他语句,例如AndOr,这取决于您尝试实现的目标。

例如:

 ElseIf input <= CInt(A) And input > CInt(B) Then

但是,根据设置为AB的变量,这些变量不会评估为true。

作为补充说明:

txtD.Text = CStr(CInt(txtD.Text))

是一个毫无意义的陈述。

txtD.Text返回一个字符串,因此无需将其转换为整数,然后是字符串然后将其分配给自身。只需删除它。

此外,AB已经是整数,您不必使用CInt将它们转换为整数。只需直接使用变量AB即可。

答案 1 :(得分:0)

您需要And加入您的条件。

这样的东西
     If input <= 32 And 32 < CInt(A) Then
          txtR.Text = "Water will freeze and Oxygen ..."
     ElseIf input <= CInt(A) And  CInt(A) > CInt(B) Then
          txtR.Text = "Water and Mercury will Freeze and Oxygen will ..."
     End If