Brauche Hilfe bei Dartsellung bzw eingeben von Kommazahlen

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
swaTch
User
Beiträge: 6
Registriert: Mittwoch 22. September 2004, 17:53

Code: Alles auswählen

#Programm zur Reise Berechnung
personen =int (raw_input("Wieviele Personen werden diese Fahrt mitmachen?: "))
hotel = int (raw_input("Wieviel kostet ihr Hotel ingesamt ? : "))
bus = int(raw_input("Wieviel bezahlen sie fuer den Bus oder Zug oder etc.? : "))
spass = int (raw_input("Wieviel kosten ihre Unternehmungen gesamt ? "))
sonstiges = int  (raw_input("sontiges an Kosten ? : "))
#Rechnung
hotel = hotel/personen
bus = bus/personen
spass = spass/personen
sontiges = sonstiges/personen
#Ausgabe
print "--------------------------------------------------------------------------------"

print "Es fahren %d Personen mit" %(personen)
print
print "Der Bus oder Zug etc. kostet JEDE Person %d Euro" %(bus)
print
print "Fuer Entertaiment muss jeder %d Euro bezahlen" %(spass)
print
print "Fuer sonstige Sachen muss jeder von ihnen %d Euro bezahlen" %(sonstiges)
So ich habe nun das Problem das er nur ganze Zahlen Darstellt aber nicht Kommazahlen. Ich weiss das es an int liegt aber ich habe absolout keine ahnung wie ich es sonst schreiben soll. In meinen neuen Python Buch steht es auch nicht.
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Wenn Du Integer (also ganze Zahlen) durch Integer dividierst, erhälst Du wieder Integer :wink:
Versuchs mal so:

Code: Alles auswählen

personen =float(raw_input("Wieviele Personen werden diese Fahrt mitmachen?: "))
hotel = float(raw_input("Wieviel kostet ihr Hotel ingesamt ? : "))
bus = float(raw_input("Wieviel bezahlen sie fuer den Bus oder Zug oder etc.? : "))
spass = float(raw_input("Wieviel kosten ihre Unternehmungen gesamt ? "))
sonstiges = float(raw_input("sontiges an Kosten ? : "))
#Rechnung
hotel = hotel/personen
bus = bus/personen
spass = spass/personen
sontiges = sonstiges/personen
#Ausgabe
print "--------------------------------------------------------------------------------"

print "Es fahren %d Personen mit" %(personen)
print
print "Der Bus oder Zug etc. kostet JEDE Person %f Euro" %(bus)
print
print "Fuer Entertaiment muss jeder %f Euro bezahlen" %(spass)
print
print "Fuer sonstige Sachen muss jeder von ihnen %f Euro bezahlen" %(sonstiges)
Gruß, mawe
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

kurz und knapp (hab keine großen Nerven mehr, weil ich gerade 4 Stunden lang nen Vortrag gemacht habe :?)

Code: Alles auswählen

text="1.2"
zahl=float(zahl)
print zahl-1
swaTch
User
Beiträge: 6
Registriert: Mittwoch 22. September 2004, 17:53

Hmm nein leider funktioniert es auch so nicht. Bei einem Punkt als Trennung zwischen Euro und Cent Rechnet er nur wieder die VorkommaZahl und bei einem Komma als Trennung stürtzt das Programm ab.
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi nochmal!

Als Trennzeichen musst Du den Punkt verwenden. Hast Du auch bei den print-Zeilen %f statt %d verwendet, wie ich's geschrieben habe? Bei mir funktioniert's.

Gruß, mawe
Antworten