PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : BubbleSort in Oberon


M4st3rmind
05.03.2006, 16:12
Huhu,

ich bin auf der Suche nach einen Algorithmus für BubbleSort in Oberon, kann mir da vielleicht jemand weiter helfen?

Danke,
KeRo


M4st3rmind
05.03.2006, 18:29
Huhu,

hab mich schließlich doch selber hingesezt ;). Funktioniert auch alles, bloß will ich noch eines mit einbauen, undzwar, dass das fertige Array a[i] (aus Procedure bubblesort an die Procedure ProgMain*; übergeben wird, und dann mit


FOR i:=1 TO n DO
D.WriteInt(a[i],1);D.WriteLn;
END;


ausgegeben wird, doch wie übergibt man Array's als Parameter?

Hier der Gesamte Code:

MODULE sort;

IMPORT D:=Display, Z:=Zufall;

VAR a : ARRAY 10 OF INTEGER;
i,t,j,n,b : INTEGER;
z: CHAR;


PROCEDURE bubblesort();
VAR
BEGIN

D.WriteStr("Elemente?");D.WriteLn;D.WriteStr("n= ");
D.ReadInt(n,3,z);D.WriteLn;D.WriteLn;

FOR i:=1 TO n DO

D.ReadInt(a[i],3,z);D.WriteLn;
END;




FOR j:=1 TO n-1 DO

FOR i:=1 TO n-1 DO
IF a[i]>a[i+1] THEN
t:=a[i+1];
a[i+1]:=a[i];
a[i]:=t;


END;



END;



END;
D.WriteLn;
FOR i:=1 TO n DO
D.WriteInt(a[i],1);D.WriteLn;
END;

D.ReadChar(z);
END bubblesort;



PROCEDURE ProgMain*;
VAR a : ARRAY 10 OF INTEGER;
i : INTEGER;
BEGIN


bubblesort();



D.ReadChar(z);
END ProgMain;

END sort.