Vb.net VB跟踪高数字和低数字

Vb.net VB跟踪高数字和低数字,vb.net,Vb.net,运行以下程序后,lownum保持为0。如果您不输入任何负数,则完全有意义。但是,如果输入了所有正数,我可以选择哪些选项来获得最低的数字 Sub Main() Declaring variables Dim number1 As Integer = 0 Dim number2 As Integer = 0 Dim lownum As Integer Dim highnum As Integer 'For statement to run loop

运行以下程序后,lownum保持为0。如果您不输入任何负数,则完全有意义。但是,如果输入了所有正数,我可以选择哪些选项来获得最低的数字

Sub Main()

    Declaring variables
    Dim number1 As Integer = 0
    Dim number2 As Integer = 0
    Dim lownum As Integer
    Dim highnum As Integer

    'For statement to run loop 10 times
    For counter As Integer = 1 To 10

        'Prompting user to enter two numbers
        Console.Write("Enter the first number: ")
        number1 = Console.ReadLine
        Console.Write("Enter the second number: ")
        number2 = Console.ReadLine

        'If statements to determine and keep track of highest and lowest number
        If number1 > number2 Then
            Console.WriteLine("Number 1 is larger " & number1)
        ElseIf number2 > number1 Then
            Console.WriteLine("Number 2 is larger " & number2)
        Else
            Console.WriteLine("The two numbers are equal: " & number1 & " " & number2)
        End If

        If number1 > highnum Then
            highnum = number1
        End If

        If number1 < lownum Then
            lownum = number1
        End If

        If number2 > highnum Then
            highnum = number2
        End If

        If number2 < lownum Then
            lownum = number2
        End If

    Next

    'Displaying highest and lowest numbers
    Console.WriteLine("The highest number entered was " & highnum)
    Console.WriteLine("The lowest number entered was " & lownum)

    'Prompting user for input to continue
    Console.WriteLine("Press any key to continue: ")
    Console.ReadKey()
End Sub

测试值是否小于或大于两个起始变量0

如果不提供最小/最大值,也不输入小于0或>0的值,则永远不会设置最小/最大值

因此,您希望将其设置为最大允许值和最小允许值

通过初始化min/max将您的变量声明为这个值,您的代码应该可以正常工作

    Dim number1 As Integer = 0
    Dim number2 As Integer = 0
    Dim lownum As Integer = Integer.MaxValue
    Dim highnum As Integer = Integer.MinValue
只需检查您的计数器变量。如果为1,则将值适当设置为低和高。如果大于1,则进行比较:

For counter As Integer = 1 To 10

    ' ... other code ...

    If counter = 1 Then
        lownum = Math.Min(number1, number2)
        highnum = Math.Max(number1, number2)
    Else
        lownum = Math.Min(lownum, Math.Min(number1, number2))
        highnum = Math.Max(highnum, Math.Max(number1, number2))
    End If
Next

你不能仅仅通过阅读代码来解决这样的问题。您可以通过调试来完成,即设置断点、单步执行代码并在相关步骤中检查状态。如果你还没有调试你的代码,在这里发布是不成熟的。如果你已经调试了你的代码,那么你需要向我们解释你发现了什么,也就是说,实际行为如何以及在哪里偏离了预期的行为。如果您不知道如何调试,现在是学习的时候了。网上有很多地方可以解释如何使用。再次阅读您的问题后,我会补充说,在这种情况下,您不会从代码开始。你首先要弄清楚代码必须做什么,这意味着要开发一个算法,这意味着要考虑如果这不是一个编程问题,你会怎么做,例如用笔和纸。几乎任何人都可以手动完成这类工作,因此几乎任何人都可以完成所需的步骤。一旦你有了这些步骤,编写代码就变得容易多了,因为你知道代码实现了什么,而不是从空气中提取出来。我完全理解上面的程序应该做什么。我想问的是,我有哪些选项可以使用用户输入使lownum变量不是0。初始化lownum的唯一选项是高数值吗?如果用户输入超过该数字的所有数字会怎样?这不是编程问题。这是一个简单的逻辑问题。不适合这样做。