首页 > 解决方案 > 输入数字的总和与 do 循环直到

问题描述

我的作业上的快速问题。我必须制作此代码的一个版本将“执行直到循环”。关于“请输入一个正数”的第一部分有效,但计算总和的第二部分无效。

Sub Main()
    
    Dim sumOdd, oddinput As Integer
    Dim odd = 1

    Console.Write("Please Enter a Positive Odd Number!: ")
    oddinput = CInt(Console.ReadLine())

    Do Until oddinput < 0 Or oddinput Mod 2 = 0

        Console.Write("Please Enter a Positive Odd Number!: ")
        oddinput = CInt(Console.ReadLine())

    Loop
   
'The do until loop below is giving me the issue

    Do Until odd <= oddinput

        sumOdd += odd
        odd += 2

    Loop

    
    Console.WriteLine("The Sum of all the odd numbers up to {0} is {1}!", oddinput, sumOdd)

    Console.ReadLine() 
End Sub

端模块

标签: vb.netvisual-studio

解决方案


尝试:

Do Until oddinput < 0 Or oddinput Mod 2 = 1

您要的是奇数,但条件只接受偶数。

和:

Do Until odd > oddinput

以前,使用odd = 1和 条件odd <= oddinput,对于任何oddinput大于1,循环将刚刚退出。


推荐阅读