Mehrfache Switch Anweisung
-
Hi,
habe ein kleines Problem mit meiner Switch Anweisung:switch( y < 200 ? y < 150 ? y < 100 ? 50 : 100 : 150 : y) { case : 50 ... case : 100 ... case : 150 ... case : 200 ... }
So sieht sie aus.
Wenn der y Wert zwichen 50 und 99 beträgt, so kommt er in die "case : 50 ..." Anweisung.
Mein Problem ist es Funktioniert einfach nicht!?
Hier mein genauer Quellcode:
switch( y < 235 ? y < 200 ? y < 196 ? y < 161 ? y < 157 ? y < 122 ? y < 118 ? y < 83 ? y < 79 ? y < 40 ? y < 40 ? y < 5 : 40 : 44 : 79 : 83 : 118 : 122 : 157 : 161 : 196 : 200 : y ) { case 5: ... ... }
Vielen dank im Voraus für alle die Antworten!
-
schlechter Code
nimm if then else
-
switch( y < 200 ? y < 150 ? y < 100 ? 50 : 100 : 150 : y) { case : 50 ... case : 100 ... case : 150 ... case : 200 ... }
wird vielleicht zu
switch((y-1)/50) { case : 0 ... case : 1 ... case : 2 ... case : 3 ... }
oder
switch(y-y%50) { case : 50 ... case : 100 ... case : 150 ... case : 200 ... }
zeig uns zu ner anderen abbildung ne übersichtliche wertetabelle (und am besten, wie die werte zustanekommen) und wir finden auch dafür ne lösung.
-
was haeist schlechter code?
ich spare viel code und Rechen Leistung,
mit if tehn else will ich es gerade nicht machen.
-
qbyte schrieb:
was haeist schlechter code?
ich spare viel code und Rechen Leistung
-
Okey ich weis was du meinst den rest müsste ich selber hinbekommen, danke!
-
Olcay == Qbyte
Okey , es macht doch etwas Probleme!
Falls du noch da bist:Oben stehen die genauen Werte, aber die Zahlen sehen so aus
Zuerst 35 zähler hoch dann 4 zähler usw. mit 5 als Startwert
5 40 44 79 83 118 122 157 161 196 200 235 240
Ich will das die 35er in der case Anweisung angesprochen werden die 4er sollen eigentlich Ignoriert werden.
-
-5 / 39 kriegst du den Abschnitt und mit % 40 kannst du testen, obs in dem "4er" Bereich liegt. Viel Spaß.
Bye, TGGC (Wähle deine Helden)