Thea Pepito
Thea Pepito

Reputation: 23

Pascal Bubble Sort

I have a project where the program must accept 10 words and display the words in descending order (alphabetical order from Z-A) using bubble sorting. Here's what I know so far: Program sample; uses crt;

TYPE 
    no._list=ARRAY(1...10)OF REAL; 
CONST 
    no.:no._list=(20.00,50.50.35.70....);
VAR 
    x:INTEGER; 
    small:REAL; 

BEGIN clrscr: 
    small:=no.(1); 
    FOR x:=2 TO 10 DO 
       IF small>number(x); 
       writeln('Smallest value in the array of no.s is',small:7:2); 
END

I really don't know how to do this though and could use some help.

Upvotes: 2

Views: 4378

Answers (2)

Software_Designer
Software_Designer

Reputation: 8587

function BubbleSort( list: TStringList ): TStringList;
var
  i, j: Integer;
  temp: string;
begin
  // bubble sort
  for i := 0 to list.Count - 1 do begin
    for j := 0 to ( list.Count - 1 ) - i do begin
      // Condition to handle i=0 & j = 9. j+1 tries to access x[10] which
      // is not there in zero based array
      if ( j + 1 = list.Count ) then
        continue;
      if ( list.Strings[j] > list.Strings[j+1] ) then begin
        temp              := list.Strings[j];
        list.Strings[j]   := list.Strings[j+1];
        list.Strings[j+1] := temp;
      end; // endif
    end; // endwhile
  end; // endwhile
  Result := list;
end;

Upvotes: 1

Brave Cobra
Brave Cobra

Reputation: 684

Here's a video by Alister Christie on Bubble sort describing the principle : http://codegearguru.com/index.php?option=com_content&task=view&id=64&Itemid=1

The algorithm in Pascal can be found @ http://delphi.wikia.com/wiki/Bubble_sort

Upvotes: 1

Related Questions