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

Perl数组循环处理:如何生成1到10的累加前缀和序列?

代码修改方案

你原代码的循环逻辑是对每个元素单独做平方计算,没有关联前序元素的计算结果,所以得到的是平方值序列。修改后的完整代码如下:

#!/usr/bin/perl
use warnings;
use strict;
my @b = (1..10);
my $prefix_sum = 0;
for (@b) {
    $prefix_sum += $_;
    $_ = $prefix_sum;
}
print ("The total is: @b\n");

运行后输出结果为:

The total is: 1 3 6 10 15 21 28 36 45 55

修改逻辑说明

  • 新增临时变量$prefix_sum存储累加值,初始赋值为0
  • 遍历数组时,先将当前元素值累加到$prefix_sum上
  • 再将当前元素替换为$prefix_sum的最新值,遍历完成后数组内就是符合要求的前缀和序列

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 00:06:03