输入:命令行上的数字列表
输出:两个数字列表,一个输入数字大于零,另一个数字小于零(忽略零值数字)
这是我的代码
#!/usr/bin/perl
$i++ = 0;
$j++ = 0;
while ($number = <>)
{
if($number<0)
$first[$i++]=$number;
else
$second[$j++]=$number;
}
print "The numbers with value less than zero are\n";
foreach $number (@first)
print $number;
print "The numbers with value greater than zero are\n"
foreach $number(@second)
print $number;
Run Code Online (Sandbox Code Playgroud)
我得到以下愚蠢的错误,我无法纠正.错误是
divide.pl: 2: ++: not found
divide.pl: 3: ++: not found
divide.pl: 5: Syntax error: ")" unexpected
Run Code Online (Sandbox Code Playgroud)
有人可以帮我纠正这些错误吗?我是perl脚本的新手
复合语句上的大括号在Perl中不是可选的.
你的陈述:
$i++=0;
$j++=0;
Run Code Online (Sandbox Code Playgroud)
没有意义; 你可能只想删除"++".
您在其中一个打印报表上缺少分号.
一旦你解决了这些问题,你应该补充一下
use strict;
use warnings;
Run Code Online (Sandbox Code Playgroud)
之后#!
.这将引入更多错误消息; 你也需要解决这些问题.例如,您需要使用声明变量my()
.