Sorting algorithms/Bubble sort: Difference between revisions

→‎{{header|BASIC}}: Clarified implementation of BASIC: QuickBASIC.
(Dialects of BASIC moved to the BASIC section.)
(→‎{{header|BASIC}}: Clarified implementation of BASIC: QuickBASIC.)
Line 1,141:
 
=={{header|BASIC}}==
{{works with|QuickBasic|4.5}}
 
{{trans|Java}}
Assume numbers are in a DIM of size "size" called "nums".
<syntaxhighlight lang="qbasic">
DO
changed = 0
FOR I = 1 to size -1
IF nums(I) > nums(I + 1) THEN
tmp = nums(I)
nums(I) = nums(I + 1)
nums(I + 1) = tmp
changed = 1
END IF
NEXT
LOOP WHILE(NOT changed)</syntaxhighlight>
 
==={{header|Applesoft BASIC}}===
<syntaxhighlight lang="basic">0 GOSUB 7 : IC = I%(0)
Line 1,615 ⟶ 1,598:
Until hasChanged = #False
EndProcedure</syntaxhighlight>
 
==={{header|QuickBASIC}}===
{{works with|QuickBasic|4.5}}
<syntaxhighlight lang="qbasic">
' Sorting algorithms/Bubble sort
' Prepare data
size = 10
OPTION BASE 1
DIM nums(size)
RANDOMIZE TIMER
PRINT "Before:";
FOR I = 1 TO size
nums(I) = INT(RND * 100)
PRINT USING " ##"; nums(I);
NEXT I
PRINT
 
' Sort
DO
changed = 0
FOR I = 1 toTO size - 1
IF nums(I) > nums(I + 1) THEN
tmp = nums(I)
nums(I) = nums(I + 1)
nums(I + 1) = tmp
changed = 1
END IF
NEXT I
LOOP WHILE(NOT (changed)</syntaxhighlight>
 
'Display result
PRINT "After: ";
FOR I = 1 TO 10
PRINT USING " ##"; nums(I);
NEXT I
PRINT
END
</syntaxhighlight>
{{out}} (2 samples)
<pre>
Before: 91 97 3 62 17 48 89 7 2 66
After: 2 3 7 17 48 62 66 89 91 97
</pre>
<pre>
Before: 22 60 45 44 54 93 84 27 21 64
After: 21 22 27 44 45 54 60 64 84 93
</pre>
 
==={{header|REALbasic}}===
511

edits