You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用While循环编写VB代码计算前100个偶数与奇数的和

问题分析与修正方案

原代码存在的核心问题

  • 变量未初始化:sum和count声明后没有赋初始值,运行时会出现未定义行为
  • 循环条件逻辑错误:count Mod 2 <= 200完全不符合需求,偶数对2取余结果恒为0,会导致死循环
  • 存在语法错误:count = 行内容为空,无法通过编译
  • 数值范围逻辑错误:前100个正偶数的范围是2~200,而非≤100的数

范围与实现方案确认

  • 无特殊说明的前提下,前100个正偶数为2,4,6...200,求和结果为10100;前100个正奇数为1,3,5...199,求和结果为10000
  • 可以使用两个独立的While循环分别计算两类和,逻辑更清晰,适合初学者理解

可运行完整代码

Sub Main()
    ' 计算前100个偶数的和
    Dim evenSum As Integer = 0
    Dim evenCount As Integer = 1 ' 循环计数器,记录已经累加的偶数数量
    Dim currentEven As Integer = 2 ' 第一个偶数
    While evenCount <= 100
        evenSum += currentEven
        currentEven += 2 ' 步进2获取下一个偶数
        evenCount += 1
    End While
    Console.WriteLine("前100个偶数的和是:{0}", evenSum)

    ' 计算前100个奇数的和
    Dim oddSum As Integer = 0
    Dim oddCount As Integer = 1
    Dim currentOdd As Integer = 1 ' 第一个奇数
    While oddCount <= 100
        oddSum += currentOdd
        currentOdd += 2 ' 步进2获取下一个奇数
        oddCount += 1
    End While
    Console.WriteLine("前100个奇数的和是:{0}", oddSum)

    Console.ReadLine()
End Sub

逻辑说明

  • 没有用取余判断奇偶的方式,直接每次步进2,性能更高,逻辑更直观
  • 用计数器控制循环刚好执行100次,避免范围判断出错的问题
  • 两类求和的逻辑完全一致,仅初始值不同,符合你之前的判断

内容的提问来源于stack exchange,提问作者user17011328

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 17:36:05