Abfrage ob Zahl gerade oder ungerade

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mep
User
Beiträge: 17
Registriert: Montag 15. Mai 2006, 15:58

Montag 15. Mai 2006, 16:14

Hallo liebe Python Gemeinde,

ich bin neu hier im Forum. Zur Zeit arbeite ich mich in Python ein, um damit ein Simulationsprogramm (MSC.Marc/Mentat) mit Werten zu "füttern".
Folgendes Problem habe ich im Moment:
ich möchte eine Abfrage starten, ob eine Variable eine gerade oder ungerade Zahl annimmt.
So in etwa:

anzahl = strecke / abstand
var1 = int(anzahl)
if var1 == gerade:
.......Anweisung1
else:
.......Anweisung2

gibts da irgend was in Python?
Für eure Hilfe wäre ich sehr dankbar.

Gruß, mep
ryu
User
Beiträge: 41
Registriert: Dienstag 7. Februar 2006, 19:34

Montag 15. Mai 2006, 16:20

mep hat geschrieben:gibts da irgend was in Python?
Für eure Hilfe wäre ich sehr dankbar.
Ich würde es per Modulo Operator machen:

Code: Alles auswählen

if x % 2: #ungrade
    pass
else: #grade
    pass
Wenn du unbedingt erst grade im Code stehen haben willst, kannst du ja mit "not" arbeiten.
icepacker
User
Beiträge: 49
Registriert: Dienstag 15. November 2005, 18:48

Montag 15. Mai 2006, 16:22

Hi
Ja da gibt es sowas.
Mit dem Modulo '%' Operator erhält man den Rest einer Division, in diesem Fall
durch 2:

Code: Alles auswählen

if var1 % 2:
    print 'ungerade'
lg icepacker
ubuntu linux !!
helmut
User
Beiträge: 57
Registriert: Mittwoch 2. November 2005, 07:45
Wohnort: Dormagen

Montag 15. Mai 2006, 18:29

Hallo,
eine weiterer Weg wäre die Lösung per Bitoperation:

Code: Alles auswählen

if var & 1:
   print ungerade
Gruss, Helmut
mep
User
Beiträge: 17
Registriert: Montag 15. Mai 2006, 15:58

Freitag 19. Mai 2006, 09:14

vielen Dank für die Tipps, ich denk so werde ich mein Problem lösen können.
Antworten