Array soriteren

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

chris786
*
Beiträge: 12
Registriert: Di, 24.10.2006 16:22

Array soriteren

Beitrag von chris786 »

Hallo
Ich habe ein mehrdimensionales Array:

Code: Alles auswählen

sub test 

dim datstun(0 to 5,0 to 1)

datstun(0,0) = 14 : datstun(0,1) = "s0.5"
datstun(1,0) = 11 : datstun(1,1) = "s1.5"
datstun(2,0) = 31 : datstun(2,1) = "s2.5"
datstun(3,0) = 15 : datstun(3,1) = "s3.5"
datstun(4,0) = 12 : datstun(4,1) = "s4.5"
datstun(5,0) = 30 : datstun(4,1) = "s5.5"

msgbox datstun(1,0)
end sub
Ich möchte nun, das es entsprechend den Werten in der ersten Spalte
soritert werden. Also 11,22,14,... und die entsprechenden Werte der zweiten Spalten sollen natürlich erhalten bleiben.
vielen Dank für eure Mühe
Chris
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Das Folgende sollte funktionieren:

Code: Alles auswählen

sub test 

dim datstun(0 to 5,0 to 1) 

datstun(0,0) = 14 : datstun(0,1) = "s0.5" 
datstun(1,0) = 11 : datstun(1,1) = "s1.5" 
datstun(2,0) = 31 : datstun(2,1) = "s2.5" 
datstun(3,0) = 15 : datstun(3,1) = "s3.5" 
datstun(4,0) = 12 : datstun(4,1) = "s4.5" 
datstun(5,0) = 30 : datstun(4,1) = "s5.5" 

For i = 0 To 5
	For j = i + 1 To 5
		If datstun(i,0) > datstun(j,0) Then 
			Temp = datstun(i,0) 
			Temp2 = datstun(i,1) 
			datstun(i,0) = datstun(j,0) 
			datstun(i,1) = datstun(j,1) 
			datstun(j,0) = Temp 
			datstun(j,1) = Temp2 
		End If 
	Next j
Next i

For i = 0 To 5
x = x & datstun(i,0) & " | " & datstun(i,1) & CHR(13)
Next i

msgbox x
end sub

Gruß
Stephan
chris786
*
Beiträge: 12
Registriert: Di, 24.10.2006 16:22

SupeR

Beitrag von chris786 »

Hallo
hat super funktioniert DANKE
chris
Antworten