Отлов некорректных операндов в математических действиях - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Привет.
Ошибки не возникает. Ответ равен "бесконечность". Если посчитать корень из -2, то ответ будет какойто "NaN". Как отловить некорректные операнды математических действий?

Решение задачи: «Отлов некорректных операндов в математических действиях»

textual
Листинг программы
Private Function Calc(ByVal op As String, ByVal x1 As Double, Optional ByVal x2 As Double = 0) As Double
    Select Case op
        Case "*"
            x1 = x1 * x2
        Case "/"
            If x2 = 0 Then Throw New DivideByZeroException
            x1 = x1 / x2
        Case "sqrt"
            If x1 < 0 Then Throw New InvalidOperationException("It it prohibited to take a square root of a negative number")
        x1 = Math.Sqrt(x1)
    End Select
    If Double.IsInfinity(x1) OrElse Double.IsNaN(x1) Then Throw New InvalidOperationException
    Return x1
End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.4 из 5
Похожие ответы