6 svar
268 visningar
RaK00 33
Postad: 3 sep 2020 14:16

Beräkning av en summa

Hej! Håller på att öva på python, frågan är att man ska fråga efter antal paket och deras vikter. Jag har fixat den delen men har kvar att beräkna summan, dvs olika vikter har olika priser och jag har skrivit de i if-satsen men jag får ERROR hela tiden att p1 inte är definerad (som det vidad i bilden), kan någon hjälpa/tipsa mig med det!

Laguna 28443
Postad: 3 sep 2020 14:38

Ja, bara en av variablerna får ju ett värde i varje varv i loopen, och från början har ingen något värde. Vad borde hända, tycker du?

Jag föreslår att du använder en enda variabel p. Och sedan ska du väl öka på summan i varje varv?

RaK00 33
Postad: 3 sep 2020 14:48
Laguna skrev:

Ja, bara en av variablerna får ju ett värde i varje varv i loopen, och från början har ingen något värde. Vad borde hända, tycker du?

Jag föreslår att du använder en enda variabel p. Och sedan ska du väl öka på summan i varje varv?

I detta fall måste jag byta till while-satsen eller? Ska jag börja med en ny eller fortsätta med den jag hade från början?

Laguna 28443
Postad: 3 sep 2020 14:53

Förutom det jag påpekade så ser det bra ut, tycker jag.

RaK00 33
Postad: 3 sep 2020 14:55
Laguna skrev:

Ja, bara en av variablerna får ju ett värde i varje varv i loopen, och från början har ingen något värde. Vad borde hända, tycker du?

Jag föreslår att du använder en enda variabel p. Och sedan ska du väl öka på summan i varje varv?

Hur menar du med att jag ska öka summan? 

RaK00 33
Postad: 3 sep 2020 14:57
Laguna skrev:

Förutom det jag påpekade så ser det bra ut, tycker jag.

För jag tänkte typ att öka summan som jag gjorde i första steget, men det är ingen konstant värde, dvs jag har fyra värde, 23, 25,28 och 30. Hur ska man öka den i detta fall?

Skaft 2373 – F.d. Moderator
Postad: 3 sep 2020 22:44

Istället för att skapa variabeln "summa" först i slutet, så kan du låta den variabeln börja på noll: summa=0, innan du läst in några värden alls. Sedan för varje nytt paket kan du öka summan. T.ex. för den lägsta viktklassen:

summa += v*30

+= utökar variabelns värde, det är en genväg som betyder samma sak som

summa = summa + v*30

På det här sättet behöver du alltså inte använda p-variablerna alls.

Svara Avbryt
Close