2012-03-18 7 views
2

У меня есть проект, в котором программа должна принимать 10 слов и отображать слова в порядке убывания (в алфавитном порядке от Z-A) с использованием сортировки пузырьков. Вот что я знаю до сих пор: Образец программы; использует crt;Pascal Bubble Сортировка

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 

Я действительно не знаю, как это сделать, хотя и мог бы вам помочь.

+2

Что вы пробовали? Какие конкретные проблемы у вас есть? Мы здесь, чтобы помочь с вопросами, а не делать домашнее задание для вас. – Corbin

+0

что вы знаете? – Doboy

+0

oh .. извините .. наш учитель только научил нас сортировать номер пузыря .. Это на самом деле наш проект. она фактически не обсуждала эту вещь, но дала ей проект. –

ответ

0
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; 
Смежные вопросы