拆分并添加数字

Dav*_*red 4 math perl

如果我用"233445"这样的字符串打开一个文件,我该如何将该字符串拆分成数字"2 3 3 4 4 5"并将每个字符串相互添加为"2 + 3 + 3等..."并打印出来结果.

到目前为止,我的代码如下所示:

use strict;

#open (FILE, '<', shift);
#my @strings = <FILE>;
@strings = qw(12243434, 345, 676744); ## or a contents of a file
foreach my $numbers (@strings) {
   my @done = split(undef, $numbers);
   print "@done\n";
}
Run Code Online (Sandbox Code Playgroud)

但我不知道从哪里开始实际的添加功能.

ike*_*ami 8

use strict;
use warnings;

my @strings = qw( 12243434 345 676744 );
for my $string (@strings) {
   my $sum;
   $sum += $_ for split(//, $string);
   print "$sum\n";
}
Run Code Online (Sandbox Code Playgroud)

要么

use strict;
use warnings;
use List::Util qw( sum );

my @strings = qw( 12243434 345 676744 );
for my $string (@strings) {
   my $sum = sum split(//, $string);
   print "$sum\n";
}
Run Code Online (Sandbox Code Playgroud)

PS - 始终使用use strict; use warnings;.它会检测到您在逗号的误用qw,而且它会dected你滥用undefsplit的第一个参数.