sbeisch
Cadet 4th Year
- Registriert
- Nov. 2007
- Beiträge
- 119
Hallo!
Ich habe ein Programm in Perl geschrieben wo ich ein Land eingeben und das Programm gibt mir die Hauptstadt dazu aus.
Ich hab die Läner und Hauptstädte in einer text Datei.Aber irgendwie kann ich nicht auf jedes Land zugreifen.
open($Datei, "laenderneu3.txt");
while(<$Datei>) {
split(/\s/);
$hash{$_[0]} = $_[2];
};
$c =1;
while ($c ==1){
print "Bitte geben Sie das Land ein von welchem Sie die Hauptstadt wissen wollen!\n";
$Land = <STDIN>;
chomp $Land;
$a = length ($value);
$value = $hash{$Land };
print "\n\n";
$a = length ($value);
if ($a > 0){
print "Die Hauptstadt von $Land ist $value \n\n";
print "Wollen Sie noch wissen auf welchem Kontinent diese liegt?(JA =1 Nein =0)\n";
$d = <STDIN> ;
print "\n\n";
if($d== 1){
open($Datei2, "konti.txt");
while(<$Datei2>) {
split(/\s/);
$hash2{$_[0]} = $_[1];
};
$k = $hash2{$Land };
print "Sie liegt in $k \n\n";
print "Wollen Sie eine neue Hauptstadt suchen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
};
if ($c== 0){print "Ende\n\n" ;
exit;
};
if($d== 0){
print "Wollen Sie eine neue Hauptstadt suchen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
if ($c== 0){print "Ende\n\n" ;
exit;
};
};
};
if ($a == 0){
print "Sie haben eine falsche Eingabe gemacht! \n";
print "Wollen Sie eine neue Eingabe machen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
};
if ($c== 0){print "Ende\n\n";
exit;
};
};
So sieht die Datei aus wo ich öffne:
San_Marino San_Marino
São_Tomé São_Tomé
Saudi-Arabien Riad
Schweden Stockholm
Schweiz Bern
Senegal Dakar
Serbien Belgrad
Seychellen Victoria
Sierra Leone Freetown
Simbabwe Harare
usw.....
Wenn ich Schweden oder Senegal eingebe kommt eine Lösung aber Schweiz geht nicht
woran könnte das liegen?
Ich finde die Lösung irgendwie nicht...
Lg sbeisch
Ich habe ein Programm in Perl geschrieben wo ich ein Land eingeben und das Programm gibt mir die Hauptstadt dazu aus.
Ich hab die Läner und Hauptstädte in einer text Datei.Aber irgendwie kann ich nicht auf jedes Land zugreifen.
open($Datei, "laenderneu3.txt");
while(<$Datei>) {
split(/\s/);
$hash{$_[0]} = $_[2];
};
$c =1;
while ($c ==1){
print "Bitte geben Sie das Land ein von welchem Sie die Hauptstadt wissen wollen!\n";
$Land = <STDIN>;
chomp $Land;
$a = length ($value);
$value = $hash{$Land };
print "\n\n";
$a = length ($value);
if ($a > 0){
print "Die Hauptstadt von $Land ist $value \n\n";
print "Wollen Sie noch wissen auf welchem Kontinent diese liegt?(JA =1 Nein =0)\n";
$d = <STDIN> ;
print "\n\n";
if($d== 1){
open($Datei2, "konti.txt");
while(<$Datei2>) {
split(/\s/);
$hash2{$_[0]} = $_[1];
};
$k = $hash2{$Land };
print "Sie liegt in $k \n\n";
print "Wollen Sie eine neue Hauptstadt suchen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
};
if ($c== 0){print "Ende\n\n" ;
exit;
};
if($d== 0){
print "Wollen Sie eine neue Hauptstadt suchen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
if ($c== 0){print "Ende\n\n" ;
exit;
};
};
};
if ($a == 0){
print "Sie haben eine falsche Eingabe gemacht! \n";
print "Wollen Sie eine neue Eingabe machen? (JA =1 Nein =0) \n";
$c = <STDIN> ;
print "\n\n";
};
if ($c== 0){print "Ende\n\n";
exit;
};
};
So sieht die Datei aus wo ich öffne:
San_Marino San_Marino
São_Tomé São_Tomé
Saudi-Arabien Riad
Schweden Stockholm
Schweiz Bern
Senegal Dakar
Serbien Belgrad
Seychellen Victoria
Sierra Leone Freetown
Simbabwe Harare
usw.....
Wenn ich Schweden oder Senegal eingebe kommt eine Lösung aber Schweiz geht nicht
woran könnte das liegen?
Ich finde die Lösung irgendwie nicht...
Lg sbeisch