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

如何通过循环函数生成指定的数字序列?

代码修正:生成指定数字序列

目标序列

1 2 4 8 16
2 6 18 54 162
3 12 48 192 768
4 20 100 500 2500
5 30 180 1080 6480
6 42 294 2058 14406

原错误代码

using System;

class Program
{
    static void Main(string[] args)
    {
        int size = 6; 
    
        for (int i = 1; i <= size; i++)
        {
            int num = i; 
        
            if(num == 1) {
              for (int j = 1; j < size; j++)
              {
                   Console.Write(num + " "); 

                   num *= 2; 
               }
          
               Console.WriteLine();
               }else{
               int num2 = 2;
        
               for (int j = 1; j < size; j++)
               {

               Console.Write(num2 + " "); 
              num2 *= 3;
          }       
           Console.WriteLine();
          }

       }
   }
}

问题分析

原代码逻辑错误:仅对第一行做特殊处理,其余行全部使用固定起始值2并乘以3,完全不符合目标序列规律。目标序列的核心规则是:

  • 每行第一个数为当前行号i(1到6)
  • 每行后续数字都是前一个数字乘以i+1,每行共输出5个数字

修改后的代码

using System;

class Program
{
    static void Main(string[] args)
    {
        int rowCount = 6; // 总行数
        int colCount = 5; // 每行数字个数
    
        for (int i = 1; i <= rowCount; i++)
        {
            int currentNum = i;
            int multiplier = i + 1; // 每行的固定乘数
        
            for (int j = 1; j <= colCount; j++)
            {
                Console.Write(currentNum + " ");
                currentNum *= multiplier;
            }
        
            Console.WriteLine();
        }
    }
}

说明

  • 用rowCount和colCount分别控制总行数与每行数字数,代码更易维护
  • 每行起始值为当前行号i,乘数固定为i+1,完全匹配目标序列生成规则
  • 统一循环逻辑,无需特殊判断第一行,避免分支错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 07:15:24