- LiFePO4 Speicher Test         
Ergebnis 1 bis 7 von 7

Thema: ist zahl gerade oder ungerade

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.12.2006
    Beiträge
    109

    ist zahl gerade oder ungerade

    Anzeige

    E-Bike
    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

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Wenn Bit0 gesetzt ist, ist der Wert ungerade. In C würde man auf "if (wert & 1)" prüfen.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    38
    Beiträge
    4.255
    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 %).

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Ups, gibt es neben integer noch andere Zahlen?

    If ((wert/2*2) == wert) könnte auch funktionieren.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    02.07.2004
    Beiträge
    138
    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

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.12.2006
    Beiträge
    109
    Vielen Dank für die Hilfe.

    Bin leider jett erst zum lesen gekommen.

    Gruß
    Martin

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    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

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen