Eine Ordnungsfunc...
Übersicht

![]() |
FetzeBetreff: Eine Ordnungsfunc... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi leutz!
Ich hab mal wieder ein Problem: Ich will meine Raumnschiffe nach Preis ordnen lassen. Das ganze Raumschiffspeichersystem sieht so aus: Preis(raumschifftyp-nr)=sonstwas Jetzt brauch ich eine Func, die mir anzeigt, welchen rang, preisgeordnet, ein bestimmtes schiff einnimmt, und umgekehrt: ordnungsfunc(raumschifftyp-nr)=nr-in-preisgeordneter-rangfolge Wenn jetzt Raumschiff Nr 4 das mit dem niedrigsten Preis und Raumschiff Nr 7 das mit dem zweitniedrigsten ist, dann soll folgendes dabei herauskommen: ordnungsfunc(4)=1 ordnungsfunc(7)=2 ... Das Problem an der Sache ist, dass die Ordnungsfunc auch mehrere Schiffe mit gleichem Preis unterstützen soll, und da scheiterts bei meiner, die ich hier leider nicht posten kann, da ich sie in einem halben wutanfall gelöscht hab ![]() ![]() Also, bitte helft mir mal ![]() |
||
![]() |
theBlade |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm ok ich weiss nicht obs dir hilft, aber zieh dir mal bubblesort rein... | ||
"Ich bin wie ich bin. Die einen kennen mich, die anderen können mich." (Dr. Konrad Adenauer)
UTFSB -> (use the fuckin "suchen"-button) User posted image <- link -.- |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi, habs nich probiert, aber vielleicht gehts ![]() Code: [AUSKLAPPEN] Function ordnungsfunc(nr) Preis = SchiffsPreis(nr) Rang = 1 For x = 0 to AnzahlSchiffe if SchiffsPreis(x) < Preis then Rang = Rang + 1 next return rang end function Du musst im Array SchiffsPreis den Preis von jedem Schiff haben und AnzahlSchiffe muss die Anzahl Schiffe enthalten ![]() cu simi |
||
![]() |
Fetze |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ne, geht nicht.
Schiffe mit gleichen Preisen werden so übereinandergelegt oder eines davon wird quasi "gelöscht". Ich hab mich jetzt 2 Tage mit dieser Function beschäftigt, und bin zu keiner Lösung gekommen. |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wenn du
Code: [AUSKLAPPEN] if SchiffsPreis(x) <= Preis and x < nr then Rang = Rang + 1 nimmst, dann sollten gleich grosse auch mit gezählt werden, aber nur, wenn sie einen kleineren index als die das abgefragete schiff haben(sonst hat einmal das eine die 5, und dann das andere). |
||
![]() |
Fetze |
![]() Antworten mit Zitat ![]() |
---|---|---|
nope, geht auch nicht. | ||
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
theblade hatte schon Recht: Bubblesort sollte hier helfen.
PseudoCode: for i = 1 to AnzRaumschiffe-1 for l = 1 to i if PreisRaumschiff(l) > PreisRaumschiff(l+1) then Hilfsvariable = RaumschiffRang(l) RaumschiffRang(l) = RaumschiffRang(l+1) RaumschiffRang(l+1) = Hilfsvariable next next Zur Erklärung: In dem Array RaumschiffRang sollte eine ID der Raumschiffe stehen um diese zuzuordnen. Ist natürlich auch anders machbar, sollte aber weiterhelfen.... |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group