#!/usr/bin/perl
#Example hashes, ideally I'd like to be able to store/recall hashes and be able to generate new
#ones.
my %BobSmith = (
name => "Bob Smith",
phone =>"123-456-7890",
street =>"13245 Main Drive",
city =>"Salt Lake City",
state =>"Utah",
zip =>"98765",
);
my @BobSmithk = keys(%BobSmith);
my %JimJones = (
name => "Jim Jones",
phone =>"098-765-4321",
street =>"1000 J St",
city =>"Jonestown",
state =>"Utah",
zip =>"12345",
);
my @JimJonesk = sort(keys(%JimJones));
mainmenu();
sub mainmenu {
print "Request: \n
1. Keys \n
2. Specific Records \n
3. Quit \n
Selection: ";
my $choice = <>;
if ($choice == 1){
showkeys();
}
elsif ($choice == 2){
records();
}
elsif ($choice == 3){
exit;
}
else {
print "Sorry, that selection isn't possible.
Please pick again.\n";
mainmenu();
}
}
sub showkeys {
print "Input user's first name: ";
my $userfirstname = <>;
$userfirstname = trim($userfirstname);
print "\nInput user's last name: ";
my $userlastname = <>;
$userlastname = trim($userlastname);
my $userfull = $userfirstname.$userlastname;
print "$userfull\n";
####
print "The keys for $$userfull{name} are: @$userfullk\n";
mainmenu();
}
####
sub records {
print "Input user's first name: ";
my $userfirst = <>;
$userfirst = trim($userfirst);
print "Input user's last name: ";
my $userlast = <>;
$userlast = trim($userlast);
$userfullname = $userfirst.$userlast;
$userfullname = trim($studentfullname);
print "$userfullname\n";
####
print "\nInput record: ";
my $record = <>;
$record = trim($record);
print "The $record of $$userfullname{name} is:
$$userfullname{$record}\n";
mainmenu();
}
sub trim($)
{
my $string = shift;
$string =~ s/^\s+//;
$string =~ s/\s+$//;
return $string;
}