ÖVNINGSUPPGIFT

Uppgift 3 - Matematiska beräkningar i Python

Försök själv först. Ledtrådar och facit finns längre ner – helt utan inloggning.


Nyckelord: Variabel, Datatyp

Uppgift 3 - Matematiska beräkningar i Python

Använd följande variabler:

a = 10
b = 3.0
c = 3
d = 2

Vad blir utskriften i nedanstående beräkningar?

A: Addition

print(a + b + d)
print(a + c + d)

B: Subtraktion

print(b - c)
print(d - c - b - a)

C: Multiplikation

print(a + b * c)
print((a + b) * c)

D: Division

print(a / b)
print(a / d)
Ledtråd

Parenteser beräknas först. Multiplikation och division har samma prioritet och beräknas från vänster till höger. Addition och subtraktion har också samma prioritet och beräknas från vänster till höger. Potenser har högre prioritet och grupperas från höger.

För beräkningar i Python gäller att om ett decimaltal är med i beräkningen, kommer även slutresultatet tolkas som ett decimaltal.

Lösning

A:
15.0
15

B:
0.0
-14.0

C:
19.0
39.0

D:
3.3333333333333335
5.0

Förklaring: 

print(a + b + d)     # 15.0 (om ett decimaltal är med i beräkningen blir resultatet också ett decimaltal)
print(a + c + d)     # 15 (enbart heltal resulterar i ett heltal)
print(b - c)         # 0.0 (beräkningar med decimaltal resulterar ett decimaltal)
print(d - c - b - a) # -14.0 (beräkningar med decimaltal resulterar ett decimaltal)
print(a + b * c)     # 19.0 (multiplikation har högre prioritet än addition)
print((a + b) * c)   # 39.0 (paranteser har högre prioritet än multiplikation)
print(a / b)         # 3.3333333333333335 (Observera nogrannheten och att det går att justera hur exakt resultatet ska bli)
print(a / d)         # 5.0 (division resulterar alltid i ett decimaltal)