Einen schönen guten Tag wünsch ich.
Das folgende Programm soll drei Kreisumfänge aufsummieren. Dafür ist jeweils der Kreisdurchmesser angegeben. Hab dafür folgenden simplen Code:
import math
def umfängeKreise(*d):
return sum(math.pi * d)
print(umfängeKreise(1, 2, 3))
mit der Fehlermeldung: TypeError: can't multiply sequence by non-int of type 'float'
Ich verstehe leider nicht warum das Programm die einzelnen Kreisumfänge nicht addieren will.
Fehlermeldung - Hilfe, Anfänger!
Weil du keine einzelnen Kreisumfänge hast. `d` ist eine Sequence aus mehreren Kreisumfängen. Du musst jeden einzelnen davon addieren.
Bei deinem Beispiel wäre das math.pi *1 + math.pi * 2 + math.pi * 3. Das lässt sich mit einer Schleife lösen. Alternativ kann man natürlich auch einfach math.pi * (1 + 2 + 3) nehmen.