Vb.net VB:如果变量是其他变量?

Vb.net VB:如果变量是其他变量?,vb.net,Vb.net,我只是在学习visualbasic。我试着做一个计算器,但是我想要它,所以如果你还有什么不在if语句中的东西,它会说“对不起”,然后返回到开头。代码如下: Module Module1 Sub Main() Dim num1 As Integer Dim num2 As Integer Dim op As String Console.WriteLine("Calculator") Console.WriteLine(" ") Console

我只是在学习visualbasic。我试着做一个计算器,但是我想要它,所以如果你还有什么不在if语句中的东西,它会说“对不起”,然后返回到开头。代码如下:

Module Module1

  Sub Main()
    Dim num1 As Integer
    Dim num2 As Integer
    Dim op As String
    Console.WriteLine("Calculator")
    Console.WriteLine(" ")
    Console.WriteLine("Valid Operators :")
    Console.WriteLine("+(Addition), -(Subtraction), *(Multiplication) & /(Division)")
    Console.WriteLine(" ")
    Console.WriteLine("Enter Number 1 :")
    num1 = Console.ReadLine()
    Console.WriteLine(" ")
    Console.WriteLine("Enter Number 2 :")
    num2 = Console.ReadLine()
    Console.WriteLine(" ")
    Console.WriteLine("Enter Operator :")
    op = Console.ReadLine()
    If op = "+" Then
        Console.WriteLine(" ")
        Console.WriteLine("Answer :")
        Console.WriteLine(num1 + num2)
        Console.WriteLine(" ")
        Console.WriteLine("Press <Enter> To Exit")
        Console.ReadLine()
    End If
    If op = "-" Then
        Console.WriteLine(" ")
        Console.WriteLine("Answer :")
        Console.WriteLine(num1 - num2)
        Console.WriteLine(" ")
        Console.WriteLine("Press <Enter> To Exit")
        Console.ReadLine()
    End If
    If op = "*" Then
        Console.WriteLine(" ")
        Console.WriteLine("Answer :")
        Console.WriteLine(num1 * num2)
        Console.WriteLine(" ")
        Console.WriteLine("Press <Enter> To Exit")
        Console.ReadLine()
    End If
    If op = "/" Then
        Console.WriteLine(" ")
        Console.WriteLine("Answer :")
        Console.WriteLine(num1 / num2)
        Console.WriteLine(" ")
        Console.WriteLine("Press <Enter> To Exit")
        Console.ReadLine()
    End If
    If op = Nothing Then
        Console.WriteLine(" ")
        Console.WriteLine("You have not entered a valid operator.")
        Console.WriteLine(" ")
        Console.WriteLine("Press <Enter> To Exit")
        Console.ReadLine()
    End If

  End Sub

End Module
模块1
副标题()
作为整数的Dim num1
作为整数的Dim num2
作为字符串的Dim op
控制台写入线(“计算器”)
控制台写入线(“”)
Console.WriteLine(“有效运算符:”)
Console.WriteLine(“+(加法),-(减法),*(乘法)和/(除法)”)
控制台写入线(“”)
Console.WriteLine(“输入数字1:”)
num1=Console.ReadLine()
控制台写入线(“”)
Console.WriteLine(“输入数字2:”)
num2=Console.ReadLine()
控制台写入线(“”)
Console.WriteLine(“输入运算符:”)
op=Console.ReadLine()
如果op=“+”则
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1+num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
如果结束
如果op=“-”则
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1-num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
如果结束
如果op=“*”则
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1*num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
如果结束
如果op=“/”则
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1/num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
如果结束
如果op=Nothing,则
控制台写入线(“”)
Console.WriteLine(“您没有输入有效的运算符。”)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
如果结束
端接头
端模块

有人能帮忙吗?

您可以这样命名您的线路:

Line1:
然后在代码中,您可以使用以下内容:

Goto Line1

仅供参考,如果我不告诉你,我会被否决,这不应该做,因为这是一个坏习惯

您正在查找switch语句(
在VB中选择Case
)。所有空的
WriteLine
语句也不是必需的

Module Module1

  Sub Main()
    Dim finished As Boolean = False

    While Not finished

      Dim num1 As Integer
      Dim num2 As Integer
      Dim op As String
      Console.WriteLine("Calculator" & Environment.Newline)
      Console.WriteLine("Valid Operators :")
      Console.WriteLine("+(Addition), -(Subtraction), *(Multiplication) & /(Division)" & Environment.Newline)
      Console.WriteLine("Enter Number 1 :")
      num1 = Console.ReadLine()
      Console.WriteLine(Environment.Newline & "Enter Number 2 :")
      num2 = Console.ReadLine()
      Console.WriteLine(Environment.Newline & "Enter Operator :")
      op = Console.ReadLine()

      Select Case op
        Case "+" 
          Console.WriteLine(Environment.Newline & "Answer :")
          Console.WriteLine((num1 + num2) & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine()
          finished = True

        Case "-" 
          Console.WriteLine(Environment.Newline & "Answer :")
          Console.WriteLine(num1 - num2 & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine()
          finished = True

        Case"*"
          Console.WriteLine(Environment.Newline & "Answer :")
          Console.WriteLine((num1 * num2) & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine()
          finished = True

        Case "/"
          Console.WriteLine(Environment.Newline & "Answer :")
          Console.WriteLine((num1 / num2) & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine()
          finished = True

        Case Is Nothing 
          Console.WriteLine(Environment.Newline & "You have not entered a valid operator." & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine()

        Case Else
          Console.WriteLine(Environment.Newline & "Sorry." & Environment.Newline)
          Console.WriteLine("Press <Enter> To Exit")
          Console.ReadLine() 

      End Select

    End While  

  End Sub

End Module
模块1
副标题()
Dim结束为布尔值=False
虽然还没有完成
作为整数的Dim num1
作为整数的Dim num2
作为字符串的Dim op
Console.WriteLine(“Calculator”和Environment.Newline)
Console.WriteLine(“有效运算符:”)
Console.WriteLine(“+(加法),-(减法),*(乘法)和/(除法)”和Environment.Newline)
Console.WriteLine(“输入数字1:”)
num1=Console.ReadLine()
Console.WriteLine(Environment.Newline&“输入数字2:”)
num2=Console.ReadLine()
Console.WriteLine(Environment.Newline&“输入运算符:”)
op=Console.ReadLine()
选择案例op
大小写“+”
Console.WriteLine(Environment.Newline&“Answer:”)
Console.WriteLine((num1+num2)和Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
完成=正确
案例“-”
Console.WriteLine(Environment.Newline&“Answer:”)
Console.WriteLine(num1-num2和Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
完成=正确
案例“*”
Console.WriteLine(Environment.Newline&“Answer:”)
Console.WriteLine((num1*num2)和Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
完成=正确
案例“/”
Console.WriteLine(Environment.Newline&“Answer:”)
Console.WriteLine((num1/num2)和Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
完成=正确
这个案子不算什么
Console.WriteLine(Environment.Newline&“您没有输入有效的运算符。”&Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
其他情况
Console.WriteLine(Environment.Newline和“Sorry.”和Environment.Newline)
控制台写入线(“按下退出”)
Console.ReadLine()
结束选择
结束时
端接头
端模块

我将在Do循环中使用Select case语句来解决这个问题,因此在您的代码中,在执行之前:

Console.WriteLine("Enter Number 1 :")
我想补充一点

Do
在最后,在最后一个if语句之前,我将添加

Loop
因此,这将产生“回到开始”的效果

在最后一个if语句中,我会这样做

Exit Do
如果符合退出条件。(执行将转到Loop命令后的第一行)

。
.
.
做
选择案例op
大小写“+”
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1+num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
案例“-”
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1-num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
案例“*”
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1*num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
案例“/”
控制台写入线(“”)
Console.WriteLine(“答案:”)
控制台写入线(num1/num2)
控制台写入线(“”)
控制台写入线(“按下退出”)
Console.ReadLine()
这个案子不算什么
控制台写入线(“”)
Console.WriteLine(“您没有输入有效的运算符。”)
控制台写入线(“”)
控制台写入线(“按下退出”)
exit=Console.ReadLin
.
.
.
Do
  Select Case op
  Case "+" 
    Console.WriteLine(" ")
    Console.WriteLine("Answer :")
    Console.WriteLine(num1 + num2)
    Console.WriteLine(" ")
    Console.WriteLine("Press <Enter> To Exit")
    Console.ReadLine()

  Case "-" 
    Console.WriteLine(" ")
    Console.WriteLine("Answer :")
    Console.WriteLine(num1 - num2)
    Console.WriteLine(" ")
    Console.WriteLine("Press <Enter> To Exit")
    Console.ReadLine()

  Case"*"
    Console.WriteLine(" ")
    Console.WriteLine("Answer :")
    Console.WriteLine(num1 * num2)
    Console.WriteLine(" ")
    Console.WriteLine("Press <Enter> To Exit")
    Console.ReadLine()

  Case "/"
    Console.WriteLine(" ")
    Console.WriteLine("Answer :")
    Console.WriteLine(num1 / num2)
    Console.WriteLine(" ")
    Console.WriteLine("Press <Enter> To Exit")
    Console.ReadLine()

  Case Is Nothing 
    Console.WriteLine(" ")
    Console.WriteLine("You have not entered a valid operator.")
    Console.WriteLine(" ")
    Console.WriteLine("Press <Enter> To Exit")
    exit = Console.ReadLine()

    //test here for exit and if exit do:

    Exit Do

  Case Else
    Console.WriteLine("Sorry")
    Console.WriteLine("Press <Enter> To Exit")
    Console.ReadLine() 

End Select

Loop