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.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.