初めてのPerl第6章ハッシュ 練習問題1
入力した値(名)に応じて、対応した値(姓)を返します。 以下プログラムになります。
#!/usr/bin/perl use strict; use warnings; my @persons = <STDIN>; chomp(@persons); my %people = (fred => 'flintstone', barney => 'rubble', wilma => 'flintstone', ); =pod foreach my $person(@persons){ printf "$person $peoples{$person}\n"; } =cut #もし登録がない人が来たら未登録ですと表示させる。 foreach my $person(@persons){ if(exists $peple{$person}){ printf "$person $people{$person}\n"; }else{ print "$person is Unregistered\n"; } }
プログラムの実行結果は以下のとおりです。
fred
barney
wilma
tom
fred flintstone
barney rubble
wilma flintstone
tom is Unregistered
現在登録してあるのは「fred、barney、wilma」の三人だけなので、入力値「tom」には、未登録のメッセージを返します。