Seite 1 von 1
if/else
Verfasst: Freitag 7. Dezember 2007, 09:53
von mathi
Hallo,
warum kann ich in ug. Beispiel das else nicht weglassen?
Code: Alles auswählen
Ngk=2.5
if Ngk>0:
fuu=raw_input('Normalkraft=positiv [J/n] !?')
if fuu=='n':
Ngkn=-Ngk
else:
Ngkn=Ngk
Ned=Ngkn
print 'Ned=%0.2f kN' % Ned
Re: if/else
Verfasst: Freitag 7. Dezember 2007, 09:56
von CM
Hoi,
wenn
Code: Alles auswählen
Ngk=2.5
if Ngk>0:
fuu=raw_input('Normalkraft=positiv [J/n] !?')
if fuu=='n':
Ngkn=-Ngk
Ngkn=Ngk
Ned=Ngkn
print 'Ned=%0.2f kN' % Ned
wird im Falle von fuu!='n' Ngkn gar nicht gesetzt. Wenn
Code: Alles auswählen
Ngk=2.5
if Ngk>0:
fuu=raw_input('Normalkraft=positiv [J/n] !?')
if fuu=='n':
Ngkn=-Ngk
Ngkn=Ngk
Ned=Ngkn
print 'Ned=%0.2f kN' % Ned
ist Ngkn unabhängig von fuu immer gleich Ngk.
Beantwortet das Deine Frage?
Gruß,
Christian
PS Was willst Du eigentlich erreichen? Der Code sieht etwas umständlich aus.
Verfasst: Freitag 7. Dezember 2007, 10:01
von BlackVivi
*kopfkratz* Sieht nach Web 2.0 aus, der User entscheidet ob Werte positiv sind XD Konnt ich mir einfach nicht verkneifen, tut mir leid ._.
Code: Alles auswählen
normalkraft = 2.5
if normalkraft < 0:
normalkraft *= -1
print 'Ned = %0.2f kM' % normalkraft
Oder hab ich's falsch verstanden?
Edit: Außerdem!
PEP8 Alarm
Verfasst: Freitag 7. Dezember 2007, 10:03
von mathi
nicht ganz:
eigentlich wollte ich so tun wie unten, aber dann ist Ngkn immer negativ, auch wenn ich j oder J eingebe.
Code: Alles auswählen
Ngk=2.5
if Ngk>0:
fuu=raw_input('Normalkraft=positiv [J/n] !?')
if fuu=='n':
Ngkn=-Ngk
# else:
# Ngkn=Ngk
Ned=Ngkn
print 'Ned=%0.2f kN' % Ned
[/code]
EDIT:
der user soll entscheiden ob j oder n, wenn n dann vorzeichen ändern, wenn j soll alles bleiben wie es ist.
Verfasst: Freitag 7. Dezember 2007, 10:09
von mathi
ich habs jetzt so:
Code: Alles auswählen
Ngk=2.5
if Ngk>0:
fuu=raw_input('Normalkraft=positiv [J/n] !?')
if fuu=='n':
Ngk*=-1
Ned=Ngk
print 'Ned=%0.2f kN' % Ned
Warum geht das jetzt ?? Ich begreif das noch nicht!
Edit:
OOOOOO Mann, ich bin so blind : Ned = Ngk (Ngkn) -> da war der Fehler!!
Verfasst: Freitag 7. Dezember 2007, 10:10
von BlackVivi
Achso, ich hab dich echt nicht verstanden oO Ich würd's eher so machen!
Code: Alles auswählen
ngk = 2.5
positiv = raw_input("Zahl negativ oder positiv? [J, n]").upper()
if positiv == "N":
ngkn = -abs(ngk)
else:
ngkn = abs(ngk)
print "blabla", ngkn
Edit: Hast du vielleicht ein großes N eingegeben?
Edit2: Boah, was'n mit mir los >_>