Einen schönen guten abend!
Gibt es in Bascom einen Befehl mit dem man feststellen kann ob eine zahl gerade oder ungerade ist oder wie kann man das am besten machen.
Danke für die Hilfe
Martin
Druckbare Version
Einen schönen guten abend!
Gibt es in Bascom einen Befehl mit dem man feststellen kann ob eine zahl gerade oder ungerade ist oder wie kann man das am besten machen.
Danke für die Hilfe
Martin
Hallo
Wenn Bit0 gesetzt ist, ist der Wert ungerade. In C würde man auf "if (wert & 1)" prüfen.
Gruß
mic
Du teilst durch 2 und schaust obs nen Rest gibt. Also der Modulo-Befehl (heißt der in bascom "mod"? In C wäre es %).
Ups, gibt es neben integer noch andere Zahlen?
If ((wert/2*2) == wert) könnte auch funktionieren.
Ergänzung zu den Vorbeiträgen:
In Bascom gibt es die mod- Operation und die ganzzahlige Division mit \ (in manchen Sprachen DIV genannt):
a) Prüfen, ob Rest bei der Division von x durch 2 0 ergibt, dann ist x gerade:
rest=x mod 2
IF rest = 0 THEN ...
b) Prüfen, ob die ganzzahlige Division gleich der normalen Division ist:
IF x\2 = x/2 THEN ..
oder wie oben: IF (x\2)*2 = x THEN ...
MfG
Vielen Dank für die Hilfe.
Bin leider jett erst zum lesen gekommen.
Gruß
Martin
Soweit ich weiß, ist x/2 immer gleich x\2. Den Unterschied macht Bascom gar nicht.
Zum Abprüfen benutze ich immer x.0=0 dann gerade, sonst ungerade.
Funktioniert für alle ganzen Zahlen, auch für negative.
Für andere Zahlen eh nicht definiert.
Gruß
Rolf