H
heartbeat
Здравствуйте уважаемые формутчане, прошу у вас помощи в решении непонятной для меня ситуации.
Пишу работу на Visual Basic и не могу понять почему, построенная конструкция на if при работе как с положительными так и с отрицательными числами даёт правельный результат, а конструкция Case только при положительных.
При указываемом значении x = -2, ответ как описано в методичке должен быть -0,84147? а получается -5,6 хотя по сути ничего не изменилось, в конструкции if все ответы получаются верные.
Пишу работу на Visual Basic и не могу понять почему, построенная конструкция на if при работе как с положительными так и с отрицательными числами даёт правельный результат, а конструкция Case только при положительных.
При указываемом значении x = -2, ответ как описано в методичке должен быть -0,84147? а получается -5,6 хотя по сути ничего не изменилось, в конструкции if все ответы получаются верные.
Код:
Dim x, K As Double
x = TextBox1.Text
If 1 <= x And x < 9 Then
K = 13 * x + 5 * (x ^ 2) + 0.4
End If
If x < 1 Or 9 <= x Then
K = Math.Sin(x / 2)
End If
Label5.Text = K
Select Case x
Case Is <= 1, Is < 9
MsgBox(x) 'при проверке, значение -2
K = 13 * x + 5 * (x ^ 2) + 0.4
MsgBox(K)
Case Is < 1, Is >= 9
K = Math.Sin(x / 2)
MsgBox(K)
End Select