Thread Modulversion vergleichen
(15 answers)
Opened by bianca at 2010-11-28 08:35
Hab mal was gebastelt, ist aber noch nicht korrekt.
1.93_99 bringt einen höheren Wert als 1.94_55 was ja nicht sein darf, wenn ich die Logik der Versionsnummern richtig begriffen habe. Bitte im Hilfe. Danke Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 #!/usr/bin/perl -w use strict; use warnings; foreach my $test ( '0.710.08', '1.93_99', '1.94_53', '1.94_54', '1.94_55', '23', '13,56', ) { print "Version '$test' = " . versionsangabe ($test) . "\n"; } sub versionsangabe { my $pot = -1; my $zahl = ''; my $ergebnis = 0; for (my $pos = length ($_[0]) - 1; $pos >= 0 ; $pos --) { my $char = substr ($_[0],$pos,1); if ( $char =~ /[^0-9]/ || !$pos ) { $pot ++; $zahl = "$char$zahl" if !$pos; $ergebnis += $zahl * (10 ** $pot); $zahl = ''; } else { $zahl = "$char$zahl"; } } return $ergebnis; } Code: (dl
)
1 Version '0.710.08' = 7108 10 print "Hallo"
20 goto 10 |