Syntax-Problem beim Größenvergleich von 3 Variablen? (a<b<=c; ignoriert b<=c) [Flash 9]
| 04.10.2009, 14:16 | | Beiträge: 26 Registriert: Jan 2008
| Syntax-Problem beim Größenvergleich von 3 Variablen? (a<b<=c; ignoriert b<=c) Also, hab den Code mal mit verkürzten Variablen-Namen geschrieben und ausprobiert. Es ist das gleiche Problem, dass dabei auftritt.
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | var G = _root.G_mc
G.A = 1.2
var a = 88
var b = G._x + G.A*a // G.A*a = 105.6
var c = G._x + G.A
trace("G._x = " + G._x)
trace("b = " + b)
trace("c = " + c)
trace("G._x < b " + (G._x < b))
trace("b <= c " + (b <= c))
trace("G._x < b <= c " + (G._x < b <= c))
/* Ausgabe:
G._x = 50
b = 155.6
c = 51.2
G._x < b true
b <= c false
G._x < b <= c true
*/
|
Beim letzten trace überprüft er nur "G._x < b" und ignoriert "<= c".
Dadurch kommt es zu diesem falschen Ergebnis!
Wieso macht er das? Was geht da bei der Syntax ab, dass er des ignoriert? | |
| 04.10.2009, 14:34 | Re1 | Beiträge: 26 Registriert: Jan 2008
Themenautor/in
| Ok, also jetzt bin ich total verwirrt!
ActionScript:| 1 | trace (0 < 2 <= 1) // = true
|
Warum wird der hintere teil nicht überprüft?
EDIT: Bei 0 < 2 < 1 kommt komischer Weise "false" raus! | Geändert von MegaMuetzenMike am 04.10.09 um 14:44 Uhr
| |
|
| 04.10.2009, 16:19 | Re2 | Beiträge: 26 Registriert: Jan 2008
Themenautor/in
| Ok, hab jetzt die Ursache für das Problem herausgefunden!
Es wird von links nach rechts durchgegangen:
0 < 2 = true
true <= 1 = true
denn der Boolean (true) wird in Number (1) umgewandelt! (false = 0)
Man muss also schreiben:
(0 < 2) && (2 <= 1)
(true && false) = false
dann kommt false raus!
"Für was brauche ich das?"
Zum Beispiel, wenn ihr überprüfen wollt, ob der Wert b im Intervall ]a, c] liegt.
Aber aufgepasst, wenn a>c ist:
a < b <= c
1 < 2 <= 3 // true
3 < 2 <= 1 //false
Intervall ]1, 3] ist ja aber eigentlich das gleiche wie [3, 1[
Man muss also vorher überprüfen, ob a>c ist und dann...das könnt ihr jetzt selber machen ^^ | Geändert von MegaMuetzenMike am 04.10.09 um 17:04 Uhr
| |
|
| | | nicht sichtbar bei eingeloggten Mitgliedern | 
|
| | Themen Ähnliche Beiträge zum Thema | 26.10.2010 - -Mani 10.11.2009 - skygirl 12.07.2009 - zachi69 02.06.2010 - Enigma_X |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|