我已經將此程序作爲初學者使用。需要澄清一些事情! 爲什麼我不能在下面給出的for循環中使用「le」,但是我可以在「if condition」中使用它。這背後的原因是什麼? ?爲什麼我們不能在for循環中使用「le」,並且可以在「if condition」中使用
print "Type the number upto series should run\n";
my $var;
$var = int<STDIN>;
chomp $var;
my ($i, $t);
my $x = 0;
my $y = 1;
if($var eq 1) {
print "\nYour Series is : $x\n";
} elsif($var eq 2){
print "\nYour Series is : $x $y\n";
} elsif($var ge 2) {
print "Your Series is : $x $y ";
for($i = 1; $i le $var - 2; $i++) {
# Why the condition not working when I'm using "le"
# but it does work when I'm using "<="
$t = $x + $y;
$x = $y;
$y = $t;
print "$t ";
}
print "\n";
} else {
print "Error: Enter a valid postive integer\n";
}
請加上'使用嚴格的;使用警告;'在(所有)腳本的頂部。 – Mat 2013-05-03 09:42:57
是什麼讓你覺得這不起作用?你期望哪種行爲?你的實際結果是什麼? – innaM 2013-05-03 09:48:19
我曾試過,它不能按要求工作。我也收到了其他評論。 – 2013-05-03 11:17:20