Sorting algorithms/Bubble sort: Difference between revisions
Content added Content deleted
(PowerShell) |
(Add new section for Lisaac) |
||
Line 614: | Line 614: | ||
Output: |
Output: |
||
A,B,C,D,E,F,G |
A,B,C,D,E,F,G |
||
=={{header|Lisaac}}== |
|||
<lang Lisaac> |
|||
Section Header |
|||
+ name := BUBBLE_SORT; |
|||
- external := `#include <time.h>`; |
|||
Section Public |
|||
- main <- ( |
|||
+ a : ARRAY[INTEGER]; |
|||
a := ARRAY[INTEGER].create 0 to 100; |
|||
`srand(time(NULL))`; |
|||
0.to 100 do { i : INTEGER; |
|||
a.put `rand()`:INTEGER to i; |
|||
}; |
|||
bubble a; |
|||
a.foreach { item : INTEGER; |
|||
item.print; |
|||
'\n'.print; |
|||
}; |
|||
); |
|||
- bubble a : ARRAY[INTEGER] <- ( |
|||
+ lower, size, t : INTEGER; |
|||
+ sorted : BOOLEAN; |
|||
lower := a.lower; |
|||
size := a.upper - lower + 1; |
|||
{ |
|||
sorted := TRUE; |
|||
size := size - 1; |
|||
0.to (size - 1) do { i : INTEGER; |
|||
(a.item(lower + i + 1) < a.item(lower + i)).if { |
|||
t := a.item(lower + i + 1); |
|||
a.put (a.item(lower + i)) to (lower + i + 1); |
|||
a.put t to (lower + i); |
|||
sorted := FALSE; |
|||
}; |
|||
}; |
|||
}.do_while {!sorted}; |
|||
); |
|||
</lang> |
|||
=={{header|Lucid}}== |
=={{header|Lucid}}== |