用于创建两个数组的Perl脚本

gog*_*ogo 0 perl

输入:命令行上的数字列表

输出:两个数字列表,一个输入数字大于零,另一个数字小于零(忽略零值数字)

这是我的代码

#!/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脚本的新手

Kei*_*son 6

复合语句上的大括号在Perl中不是可选的.

你的陈述:

$i++=0;
$j++=0;
Run Code Online (Sandbox Code Playgroud)

没有意义; 你可能只想删除"++".

您在其中一个打印报表上缺少分号.

一旦你解决了这些问题,你应该补充一下

use strict;
use warnings;
Run Code Online (Sandbox Code Playgroud)

之后#!.这将引入更多错误消息; 你也需要解决这些问题.例如,您需要使用声明变量my().

  • "给出错误说找不到使用"并不是我熟悉的任何perl错误文本.也许你应该做一个确切的引用而不是一个意译. (2认同)