我想寫個簡單的程序,做練習(xí)用,剛接觸這個。就是連續(xù)數(shù)字的和。傳入起始值和結(jié)束值(如傳入1,和10,就求1到10累加的值)。perl這種語言感覺太惡心了,怎么寫都錯,完全沒C C# Java那么清晰。sub myfunc(){($startIndex,$endIndex)=@_;my $sum = 0;for($i=$startIndex;$i<=$endIndex;$i++){$sum = $sum+$i;}return $sum;}my $startIndex = 1;my $endIndex = 10;$s = myfunc();print "$s";上面的怎么錯了。寫成myfunc(1,10)時錯的更厲害,完全弄不清楚perl是怎么搞的。還有函數(shù)里聲明的變量默認是my 還是local的。
3 回答

智慧大石
TA貢獻1946條經(jīng)驗 獲得超3個贊
sub myfunc {
my ($start, $end) = @_;
my $sum = 0;
$sum+= $_ for $start .. ($end+1);
return $sum;
}
print myfunc 1, 10;

jeck貓
TA貢獻1909條經(jīng)驗 獲得超7個贊
#子過程和函數(shù)不一樣
sub myfunc
{
my ($startIndex,$endIndex)=@_;
my $sum = 0;
for($i=$startIndex;$i<=$endIndex;$i++){
$sum += $i;
}
return $sum;
}
my $startIndex = 1;
my $endIndex = 10;
$s = myfunc($startIndex ,$endIndex);
print "sum is $s\n";
- 3 回答
- 0 關(guān)注
- 520 瀏覽
添加回答
舉報
0/150
提交
取消