我想寫個簡單的程序,做練習用,剛接觸這個。就是連續數字的和。傳入起始值和結束值(如傳入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是怎么搞的。還有函數里聲明的變量默認是my 還是local的。哪位大蝦幫我看看,把程序更正下!謝謝...........
3 回答

尚方寶劍之說
TA貢獻1788條經驗 獲得超4個贊
sub myfunc {
my ($start, $end) = @_;
my $sum = 0;
$sum+= $_ for $start .. ($end+1);
return $sum;
}
print myfunc 1, 10;

明月笑刀無情
TA貢獻1828條經驗 獲得超4個贊
#子過程和函數不一樣
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";
寫perl了?找本駱駝書看吧.
感覺太惡心?那是因為它的作者是個語言學家-_-##
- 3 回答
- 0 關注
- 706 瀏覽
添加回答
舉報
0/150
提交
取消