Ocena użytkownikóww: ***** / 0
Nadesłany przez , 14 października 2014 01:02
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.bubblesort.pl:
#!/usr/bin/perl
# Mateusz Kacprzak
# Sortowanie bąbelkowe
# www.algorytm.org
sub bubble_sort($);
print 'Podaj rozmiar tablicy: ';
chomp ($size = <STDIN>);
@tab = ();
foreach $i (0 .. $size-1) {
print 'Podaj liczbę: ';
chomp ($tab[$i] = <STDIN>);
}
bubble_sort(\@tab);
print "Tablica posortowana:\n";
foreach $e (@tab) {
print $e.' ';
}
print "\n";
#-=- definicja procedury -=-#
sub bubble_sort($) {
$t = shift;
($done, $tail) = (0, scalar @{$t} - 2);
until ($done) {
$done = 1;
foreach $i (0 .. $tail) {
if (@{$t}[$i] > @{$t}[$i+1]) {
(@{$t}[$i], @{$t}[$i+1]) = (@{$t}[$i+1], @{$t}[$i]);
$done = 0;
}
}
--$tail;
}
}