perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 19
Click for quality!




11.02.2012 / 07:09

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


Beitragfor schleife
Seitenanfang
Hallo ich habe ein Programm, dass die Länge der Elemente vom array @cities liest und die längen sortiert im @citylength array(vom größten zum kleinsten Element)
jetzt möchte ich aber eigentlich nicht als Ausgabe die sortierten Längen haben sondern die Städte.

also letzte ausgabe von diesem Programm ist:
9 8 7 5 3
jetzt hätte ich dazu gerne parallel als Ausgabe:
Amsterdam Grenoble Hamburg Paris Rom

ich kann aber nicht
for (my $i = 0; my $i <= $#length(@cities); ... usw machen, das gibt einen error aus.

#! /usr/bin/perl

use strict;
use warnings;

my @citylength = ();
my @cities = qw(Rom Hamburg Grenoble Paris Amsterdam);

print $#cities;

# $i geht durch jedes Element in @cities

for (my $i =0; $i <= $#cities; $i++){
$citylength[$i] = length($cities[$i]);

print "laenge der Staedte: @citylength\n";

# $j geht durch jedes Element in @citylength
# $k ist immer ein Element hoeher als $j in @citylength

for (my $j = 0; $j <= $#citylength; $j++){
for (my $k = 0; $k <= $j ; $k++){

print "wert von j: $j\n wert von k: $k\n";
print "mein element j: $citylength[$j]\n mein element k: $citylength[$k]\n";

if ($citylength[$j] > $citylength[$k]){
($citylength[$j], $citylength[$k]) = ($citylength[$k], $citylength[$j]);
} }
print "@citylength\n";
# print $citylength[$k]."\n";

}
}

Datum: 15.05.2007-14:54

Beitragjetzt funktioniert es
Seitenanfang
Ich habe den code jetzt umgeändert und es funktioniert :-)
Danke trotzdem

my $k;
my $j;

for ($j = 0; $j <= $#citylength; $j++){
for ($k = 0; $k <= $j ; $k++){

print "wert von j: $j\n wert von k: $k\n";
#print "mein element j: $citylength[$j]\n mein element k: $citylength[$k]\n";

if (length($cities[$j]) > length($cities[$k])){
(($cities[$j]), ($cities[$k])) = (($cities[$k]), ($cities[$j]));
} }
print "@cities\n";

Datum: 15.05.2007-15:19

-






-
-