IN1000 høst2024
Introduksjon til objektorientert programmering (Python)
02.17 Kalkulator
Filnavn: kalkulator.py
a) Skriv en prosedyre kalkulator()
som ber brukeren å taste inn et tall, en operasjon (f.eks. +, -, * og /), og et annet tall. Prosedyren skal skrive ut beregningen og resultatet. Her er et eksempel på hvordan en kjøring av programmet kan se ut:
Første tall: 4.5
Operasjon: +
Andre tall: 7
4.5 + 7.0 = 11.5
b) Utvid programmet slik at hvis brukeren taster inn en ulovlig operasjon, skrives det ut en advarsel.
def kalkulator():
tall1 = float(input("Første tall: "))
operasjon = input("Operasjon: ")
tall2 = float(input("Andre tall: "))
if operasjon == "+":
print(tall1, "+", tall2, "=", tall1 + tall2)
elif operasjon == "-":
print(tall1, "-", tall2, "=", tall1 - tall2)
elif operasjon == "*":
print(tall1, "*", tall2, "=", tall1 * tall2)
elif operasjon == "/":
print(tall1, "/", tall2, "=", tall1 / tall2)
else: # b
print("advarsel: operasjon", operasjon, "eksisterer ikke")
kalkulator()
02.23 Is eller pizza
Filnavn: pizza_eller_is.py
a) Lag en prosedyre spoer_is()
som spør brukeren hvor mange kuler is de vil ha og skriver ut totalprisen. En kule koster 30 NOK.
b) Lag en annen prosedyre spoer_pizza()
som spør om hva slags pizza brukeren vil ha. Hvis svaret er "ost", er prisen 80kr. Ellers koster pizzaen 100kr. Skriv så ut hva slags pizza brukeren bestillte og hvor mye pizzaen koster.
c) Lag en tredje prosedyre spoer_spise()
som spør om hva brukeren ønsker spise. Hvis svaret er "is", kall spoer_is()
, hvis svaret er "pizza", kall spoer_pizza()
, og hvis svaret er noe annet skriv ut en melding som sier at vi ikke selger dette.
d) Kall spoer_spise()
og se om alt fungerer.
a)
def spoer_is():
antall_kuler = int(input("Hvor mange kuler ønsker du? "))
pris = 30 * antall_kuler
print("Din is koster", pris, "kr.")
b)
def spoer_pizza():
pizza = input("Hva slags pizza ønsker du? ")
if pizza == "ost":
pris = 80
else:
pris = 100
print("Din pizza med", pizza, "koster", pris, "kr.")
c)
def spoer_spise():
ønsket_mat = input("Hva vil du spise? ")
if ønsket_mat == "pizza":
spoer_pizza()
elif ønsket_mat == "is":
spoer_is()
else:
print("Vi selger ikke", ønsket_mat)
d)
spoer_spise()
Hele programmet i pizza_eller_is.py:
def spoer_is():
antall_kuler = int(input("Hvor mange kuler ønsker du? "))
pris = 30 * antall_kuler
print("Din is koster", pris, "kr.")
def spoer_pizza():
pizza = input("Hva slags pizza ønsker du? ")
if pizza == "ost":
pris = 80
else:
pris = 100
print("Din pizza med", pizza, "koster", pris, "kr.")
def spoer_spise():
ønsket_mat = input("Hva vil du spise? ")
if ønsket_mat == "pizza":
spoer_pizza()
elif ønsket_mat == "is":
spoer_is()
else:
print("Vi selger ikke", ønsket_mat)
spoer_spise()