Thread gesamtgewicht (3 answers)
Opened by kale_1990 at 2006-09-27 11:59

docsnyder
 2006-09-27 16:24
#70307 #70307
User since
2005-09-08
300 Artikel
BenutzerIn
[Homepage] [default_avatar]
@kale_1990

Von der Logik her sieht der Algorithmus, den Du suchst, etwa so aus:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
sub calcWeight {
my($item) = @_;
my($weight) = 0;
my($part);

$numParts = scalar(@parts = getParts($item));

if ( $numParts == 0 ) {
return(getWeight($item));
}
elsif ( $numParts == 1 ) {
return(getWeight($parts[0]));
}
else {
for $part ( @parts ) {
$weight += calcWeight($part);
}
}

return($weight);
}


getParts() musst Du dabei so implementieren, daß die Funktion zu einem gegebenen Teil die Liste der Teile liefert, aus denen das Teil besteht (wenn ein Bestandteil 5 mal das gleiche Teil ist, sollten auch 5 Elemente in der Liste sein). getWeight() liefert das Gewicht eines Teiles. "Wie" Du diese 2 Funktionen implementierst, musst Du wissen, sollte aber nicht so schwer sein. Es geht in meinem Beispiel nur um die Ablauflogik.

Gruß, Doc

View full thread gesamtgewicht