TypeError: can't multiply sequence by non-int of type 'float'

Status
Niet open voor verdere reacties.

swen1997

Gebruiker
Lid geworden
7 apr 2012
Berichten
137
Hallo helpmij`ers,

als ik deze code gebruik:

Code:
print"een paar vragen"
print""
pa= raw_input("Hoeveel dagen heb je het busje nodig? (7): ")
pb= raw_input("Hoeveel kilometers ga je rijden?: ")
pc= raw_input("Wil je europadekking (1.50 per dag) 1= aan 0= uit : ")
pd= raw_input("Wil je inzettende verzekering (2.50 per dag 1= aan 0= uit): ")


print""

print"verder worden deze gegevens gebruikt:"
print"verbruik: 6L/100KM"
print"prijs per kilometer: 0.09"
print"prijs per dag: 35.00"
print"verzekering per dag: 8.40"
print"brandstof prijs: 1.539/L"
print"BTW% 21%"

print""

print"rekenen..."

print""

pe=100/6.0
pf=0.09
pg=35
ph=8.40
pj=1.539
pk=1.50
pl=2.50
pm=1.21



qa=(pb*pf)*pm
qb=(pb/pe)*pj
qc=(pa*pg)*pm
qd=(ph*pa)*pm
qe=(pk*pa)*pc
qf=(pl*pa)*pd
print ("extrakosten......")
print ("huurdagenkosten.....")
print ("verzekeringskosten..........")
print ("europadekkingskosten..")
print ("inzittendekosten...")




print (qa)
print (qb)
print (qc)
print (qd)
print (qe)
print (qf)
input ("Bedankt voor het gebruiken van de software!")
totaal= extrakosten + brandstofkosten + huurdagenkosten + verzekeringskosten + europadekkingskosten + inzittendekosten
print ""
print (totaal)

dan krijg ik deze error:

Code:
Traceback (most recent call last):
  File "C:/Users/swen/Desktop/scouting2", line 36, in <module>
    qa=(pb*pf)*pm
TypeError: can't multiply sequence by non-int of type 'float'

welk deel moet ik veranderen om het goed werkend te krijgen, ik heb gegoogled maar ik kan er niet echt verder mee komen.
 
De foutmelding op zichzelf is vrij helder; een sequence (tekenreeks) kan niet worden vermenigvuldigd met een getal (in dit geval float).

En welke programmeer-/scripttaal is dit? Python?
 
ja het is in python.
Dus als ik dit toevoeg:

Code:
float (pa)
float (pb)
float (pc)
float (pd)
float (pe)
float (pf)
float (pg)
float (ph)
float (pj)
float (pk)
float (pl)
float (pm)

worden al deze waardes float`s, toch?

maar dan krijg ik dezelfde melding, maar voor èèn van de vermenigvuldigingen.

Code:
Traceback (most recent call last):
  File "C:\Users\swen\Desktop\scouting2.py", line 50, in <module>
    qa=(pb*pf)*pm
TypeError: can't multiply sequence by non-int of type 'float'
 
En zo:

Code:
pa = float(raw_input("Hoeveel dagen heb je het busje nodig? (7): "))

Verder zijn die haakjes in je berekeningen niet nodig ;)
 
Bedankt, hij werkt nu.
Je moet de float dus bij de input zetten, dan werkt hij (het werkte niet toen later float (pa) invoegde).
 
float(pa) is toch ook geen statement? Het doet dus ook niets.

En goed dat je het nu werkend hebt :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan