
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> ich habe in einem Programm einen Zähler gebaut, der im Sekundentakt um +1 zählt. > > Nun ist es für das weitere Programm wichtig, dass ich bei einem geraden bzw. ungeraden Zählerstand bestimmte Schaltzustände auslöse. > > Sollte so aussehen: > > if zaehler "gerade" then led = 0 > if zaehler "ungerade" then led = 1 > > Hat jemande eine Idee, wie ich gerade bzw. ungerade definiere. "Gerade" und "ungerade" ist ja definiert als "ohne", bzw. "mit" Rest durch 2 teilbar. Den "Rest einer Division" ermittelt die modulo-Funktion. Die heisst im CC-Basic "mod". Da der Rest zufällig eben nur 0 oder 1 sein kann, kann man Deine Statements oben ganz kurz als led = zaehler mod 2 schreiben. Wenn ich allerdings richtig vermute, und led eine Bit-Variable (z. B. ein Port) ist, dann ist die Zuweisung led = 1 unzulässig. Zulässige Zuweisungen an Bit-Variablen sind beim CC-Basic nur 0 und -1 (minus 1) (oder die entsprechenden Konstanten ON und OFF oder andere Bitvariablen). Aber das kriegt man auch noch in einer Zeile unter: led = -(zaehler mod 2) HTH Bye Achim |
| Antwort schreiben |