Archiv verlassen und diese Seite im Standarddesign anzeigen : ist zahl gerade oder ungerade
martin66119
22.10.2007, 22:17
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
radbruch
22.10.2007, 22:26
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 %).
radbruch
22.10.2007, 22:32
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
martin66119
23.10.2007, 20:38
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
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.