Hilfe versteh den Unterschied zwischen den 2 codes nicht?

1 Antwort

Was ist überhaupt die Aufgabenstellung? Und welcher ist nun dein Code und welcher die Vorlage?

Ein paar Sachen springen zumindest ins Auge:

elif (work >= 20) and (work >= 50):

Das ist eine seltsame Bedingung. Wenn work >= 50 ist, ist es zwangsläufig auch >= 20.

        (new_prices.append(work * 0.20))

Wozu eigentlich diese Klammern?

Cracylp 
Fragesteller
 16.09.2023, 18:13

Der Code soll zahlen erkennen und diese wenn die Bedingung erfüllt ist mit einem Rabatt in meinem fall wenn Preis kleiner als 20 dann gebe ein Rabatt von 20 % auf den preis und füge diese der liste "new_price" zu

also da hab ich die das größer kleiner Symbol wohl vertauscht und bei dem (new_prices.append(work * 0.20)) war ich mir sicher das die dazu gehören. Der Code der zum schluss kommt mit der Variable price ist vom Dozenten.

0
jo135  16.09.2023, 18:18
@Cracylp
Der Code soll zahlen erkennen und diese wenn die Bedingung erfüllt ist mit einem Rabatt in meinem fall wenn Preis kleiner als 20 dann gebe ein Rabatt von 20 % auf den preis und füge diese der liste "new_price" zu

Das ist bei der zweiten Schleife genau so gelöst - die ist einfach und klar. Ein Rabatt von 20% bedeutet, dass der Preis * 0.8 genommen werden muss.

Bei der ersten Schleife (die wohl deine ist) stimmt die Prozentrechnung nicht und es gibt eben diese seltsame Zusatzbedingung mit 50 und dem Faktor 0,4...?

2
Techmaster  16.09.2023, 18:18
@Cracylp

Da ist das Problem glaube ich schon gelöst.

Wenn du 20% Rabatt haben willst musst du mir 0.8 multiplizieren da dann 80% übrig bleibt vom vorherigen und 20% wird abgezogen wenn ich es richtig verstanden habe 2*0.2 = 0.4 und 2*0.8 = 1.6 das sollte es hoffentlich geklärt haben. Würde mich über eine Rückmeldung freuen

1