如何在 Visual Basic 中循环 If 条件直到用户输入所需的值

How to Loop through a If condition untill the user enter a required value, in Visual Basic

Console.WriteLine("Please Enter the number")
Dim number As Integer = Console.ReadLine()

If (number=< 40) Then
    number = number* 10
ElseIf (number=< 150) Then
    number= number* 15
Else
    number= number* 26
End If
Console.WriteLine(number)

Dim total As Integer
Dim vALUE As Integer

   Console.WriteLine("Please, type 1 for x . Type 2 for y. Type 3 z")
vALUE = Console.ReadLine()

If vALUE = 1 Then
    Console.WriteLine("x")
    total = number* (106 / 100)

ElseIf vALUE = 2
    Console.WriteLine("y")
    total = number* (112 / 100)

ElseIf uSERvALUE = 3
    Console.WriteLine("z")
    total = number* (116 / 100)

Else
    Console.WriteLine("Sorry please re-enter the value")
    vALUE = Nothing


End If

结束时

请告诉我如何重复 if 条件。在 else 行中,我向用户显示了重新输入的值。因此,我需要重复 if 条件,直到值为 1 或 2 或 3.Please 解释如何操作 我是新手。

你可以使用无限While-loop,并在你同意的条件语句的末尾加上"Exit While",这样就没有多少方法可以摆脱无限循环了。

例如,在您的代码中:

Console.WriteLine("Please Enter the number")
    Dim number As Integer = Console.ReadLine()

    If (number=< 40) Then
        number = number* 10
    ElseIf (number=< 150) Then
        number= number* 15
    Else
        number= number* 26
    End If
    Console.WriteLine(number)

    Dim total As Integer
    Dim vALUE As Integer

'infinite loop until user input 1,2 or 3
While True

    Console.WriteLine("Please, type 1 for x . Type 2 for y. Type 3 z")
    vALUE = Console.ReadLine()

    If vALUE = 1 Then
        Console.WriteLine("x")
        total = number* (106 / 100)
        Exit While    'condition matched , break from While 
    ElseIf vALUE = 2
        Console.WriteLine("y")
        total = number* (112 / 100)
        Exit While    'condition matched , break from While 
    ElseIf uSERvALUE = 3
        Console.WriteLine("z")
        total = number* (116 / 100)
        Exit While    'condition matched , break from While 
    Else
        Console.WriteLine("Sorry please re-enter the value")
        vALUE = Nothing


    End If

End While

'do further more you need