これは小さな問題であり、あなたが私を助けてくれることを願っています. 私のコードはおそらくゴミです。たとえば、唯一のステートメントがJohn is the uncle of Sam
. 私の Perl スクリプトは、ファイルの内容を配列にコピーする必要があります。ユーザーは、別の名前を入力して、それらの名前がファイルに記載されているかどうかを検索できる必要があります。プログラムには、「叔父叔母、母、父など」のような関係を持つ配列があるはずです。
#use warnings;
use Array::Utils qw(:all);
print "Please enter the name of the file\n";
my $c = <STDIN>;
open(NEW,$c) or die "The file cannot be opened";
@d = <NEW>;
print @d, "\n";
@g = qw(aunt uncle father);
chomp @d;
chomp @g;
my $e;
my $f;
print "Please enter the name of the first person\n";
my $a = <STDIN>;
print "Please enter the name of the second person\n";
my $b = <STDIN>;
my @isect = intersect(@g, @d);
print @isect;
foreach(@d)
{
if ($a == $_)
{
$e = $a;
}
else
{
print "The first person is not mentioned in the article";
exit();
}
if ($b == $_)
{
$f = $b;
}
else
{
print "The second person is not mentioned in the article";
exit();
}
}
print $e;
print $f;
close(NEW);
これは私がこれまでに行ったことであり、交差点は両方の配列で共通の単語である叔父という単語を与えていません。プログラムは任意のランダムな名前を取得して出力します。John と Sam 以外の別の名前を入力しても、その名前がファイルに存在しないと言っているわけではありません