[actionscript 1] a<b<c

Pagina: 1
Acties:

  • Justice
  • Registratie: Maart 2001
  • Laatst online: 07-08-2025
ik heb deze testcase
code:
1
2
3
4
5
6
7
8
a = 0;
b = 300;
c = 200;
    if (a<=b<c) {
        trace("klopt");
    } else {
        trace("fout");
    }


flash geeft altijd "klopt" wat ik ook invoer..
wat wel werkt is:
code:
1
2
3
4
5
6
7
8
a = 0;
b = 300;
c = 200;
    if ((a<=b) && (b<c)) {
        trace("klopt");
    } else {
        trace("fout");
    }

Maar dan krijg ik 2x zo lange ifs.. en het is niet netjes.. Doe ik iets fout of is het niet mogelijk om bijvoorbeeld: 0<x<4 waarbij x=2 zo om te zetten in actionscript?

Human Bobby


  • BraveWorld
  • Registratie: September 2001
  • Niet online
Actionscript ken ik niet. Lijkt op C echter.

Ik gok:

In de code (a<=b<c) zal a<=b TRUE opleveren. Dus 1 of -1. Dus als c groter is dan is de uitkomst altijd 'klopt'. Probeer 's negatieve waarden voor c.

[ Voor 33% gewijzigd door BraveWorld op 18-11-2003 15:48 ]

Dit is geen signature...


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:32

crisp

Devver

Pixelated

Actionscript is een implementatie van ECMA gelijk javascript, en in deze is inderdaad de C-syntax gebruikt.
Je zult dus inderdaad met AND (&&) moeten werken in dit soort vergelijkingen, de extra haakjes kan je hier echter weglaten dus dat scheelt:

code:
1
if (a<=b && b<c) { }

Intentionally left blank


Verwijderd

Als dit nou heel vaak terugkomt in je code en je maakt je zorgen over de lengte van je if-statements zou je er natuurlijk een aparte functie voor kunnen maken.
code:
1
2
3
if(abc(a,b,c)) {
    // etc.
}