Tilbake
9.2
Programmering med Python

9.2 Programmering med Python

Lær grunnleggende programmering i Python: variabler, datatyper, betingelser, løkker og funksjoner, med praktiske eksempler fra matematikken.

55 min
8 oppgaver
PythonVariablerDatatyperBetingelserLøkkerFunksjoner
Du leser den tradisjonelle versjonen
Din fremgang i kapitlet
0 / 8 oppgaver
Kapitlets plass i kurset

Hvorfor Python?

Python er et programmeringsspråk som er spesielt godt egnet for nybegynnere. Det har en enkel syntaks som ligner på vanlig engelsk, og det er kraftig nok til å brukes av forskere, ingeniører og dataanalytikere over hele verden.

I matematikk bruker vi Python fordi det er enkelt å:
- Gjøre beregninger raskt og nøyaktig
- Utforske mønstre og sammenhenger
- Tegne grafer og visualisere data
- Simulere tilfeldige forsøk

For å komme i gang trenger du bare en nettleser. Du kan bruke gratistjenester som Trinket (trinket.io) eller replit.com til å skrive og kjøre Python-kode uten å installere noe.

Variabler og datatyper

En variabel er et navn som peker på en verdi. Tenk på det som en merkelapp på en boks der du oppbevarer noe.

alder = 16
navn = "Ola"
hoyde = 1.75
er_elev = True

Python har flere datatyper:

DatatypeBeskrivelseEksempel
intHeltall42, -7, 0
floatDesimaltall3.14, -0.5
strTekst (streng)"Hei", 'Verden'
boolSannhetsverdiTrue, False

Merk: I Python bruker vi punktum som desimalskilletegn, ikke komma (altså 3.14 i stedet for 3,14).
Variabel

En variabel er et navn som refererer til en verdi lagret i datamaskinens minne.

Vi oppretter en variabel med tilordning (=):

pris = 299

Variabelnavnet (pris) er til venstre, verdien (299) er til høyre. Vi kan endre verdien senere:

pris = 349

Input og output

For å skrive ut noe til skjermen bruker vi print(). For å lese inn noe fra brukeren bruker vi input().

# Skrive ut tekst
print("Hei, verden!")

# Skrive ut en variabel
resultat = 7 + 3
print(resultat)          # Skriver ut: 10
print("Svaret er", resultat)  # Skriver ut: Svaret er 10

# Lese inn fra brukeren
navn = input("Hva heter du? ")
print("Hei,", navn)

Viktig: input() gir alltid tekst tilbake. Hvis du vil bruke det som et tall, må du konvertere:

tekst = input("Skriv inn et tall: ")
tall = int(tekst)       # Gjør om til heltall
# eller
tall = float(tekst)     # Gjør om til desimaltall

Regneoperasjoner i Python

Python kan brukes som en kraftig kalkulator. Her er de viktigste operatorene:

OperatorBetydningEksempelResultat
+Addisjon7 + 310
-Subtraksjon10 - 46
*Multiplikasjon5 * 315
/Divisjon17 / 44.25
**Potens2 ** 532
//Heltallsdivisjon17 // 44
%Rest (modulo)17 % 41

# Eksempler
print(3 + 4)       # 7
print(2 ** 10)     # 1024
print(17 // 5)     # 3 (heltallsdivisjon)
print(17 % 5)      # 2 (rest: 17 = 3*5 + 2)
print(3.14 * 5**2) # 78.5 (areal av sirkel med radius 5)
✏️Eksempel 1: Temperaturomregning

Skriv et Python-program som regner om fra Celsius til Fahrenheit. Formelen er: F=95C+32\displaystyle F = \frac{9}{5} \cdot C + 32.

celsius = float(input("Skriv inn temperatur i Celsius: "))
fahrenheit = (9/5) * celsius + 32
print(celsius, "grader Celsius er", fahrenheit, "grader Fahrenheit")

Eksempel på kjøring:

Skriv inn temperatur i Celsius: 20
20.0 grader Celsius er 68.0 grader Fahrenheit

Programmet leser inn temperaturen fra brukeren, gjør om til desimaltall med float(), regner ut Fahrenheit med formelen, og skriver ut svaret.

If-setninger (betingelser)

En if-setning lar programmet ta valg. Den sjekker om en betingelse er sann, og utfører kode basert på resultatet.

alder = int(input("Hvor gammel er du? "))

if alder >= 18:
    print("Du er myndig.")
else:
    print("Du er ikke myndig ennå.")

Vi kan også ha flere betingelser med elif (forkortelse for "else if"):

poeng = int(input("Hvor mange poeng fikk du? "))

if poeng >= 90:
    print("Karakter: 6")
elif poeng >= 75:
    print("Karakter: 5")
elif poeng >= 55:
    print("Karakter: 4")
elif poeng >= 40:
    print("Karakter: 3")
elif poeng >= 25:
    print("Karakter: 2")
else:
    print("Karakter: 1")

Sammenligningsoperatorer:
- == er lik
- != er ikke lik
- > større enn, < mindre enn
- >= større enn eller lik, <= mindre enn eller lik

Løkker (gjentakelse)

Løkker lar oss gjenta kode mange ganger uten å skrive den om igjen.

For-løkke


Brukes når vi vet hvor mange ganger vi vil gjenta:

# Skriv ut tallene 1 til 5
for i in range(1, 6):
    print(i)

range(1, 6) gir tallene 1, 2, 3, 4, 5 (merk: 6 er ikke inkludert).

# Beregn summen 1 + 2 + 3 + ... + 100
total = 0
for tall in range(1, 101):
    total = total + tall
print("Summen er", total)   # Skriver ut: Summen er 5050

While-løkke


Brukes når vi vil gjenta så lenge en betingelse er sann:

# Tell ned fra 10
n = 10
while n > 0:
    print(n)
    n = n - 1
print("Start!")
✏️Eksempel 2: Prosentregning

Skriv et Python-program som beregner vekstfaktor og ny pris etter en prosentvis endring.

pris = float(input("Oppgi opprinnelig pris: "))
endring = float(input("Oppgi prosentvis endring (f.eks. 15 for økning, -20 for nedgang): "))

vekstfaktor = 1 + endring / 100
ny_pris = pris * vekstfaktor

print("Vekstfaktor:", vekstfaktor)
print("Ny pris:", round(ny_pris, 2), "kr")

Eksempel på kjøring:

Oppgi opprinnelig pris: 500
Oppgi prosentvis endring (f.eks. 15 for økning, -20 for nedgang): -25
Vekstfaktor: 0.75
Ny pris: 375.0 kr

Funksjonen round(ny_pris, 2) runder av til 2 desimaler.

Funksjoner

En funksjon er en navngitt blokk med kode som utfører en bestemt oppgave. Vi kan bruke den igjen og igjen.

def hils(navn):
    print("Hei,", navn, "!")

hils("Sara")     # Skriver ut: Hei, Sara !
hils("Erik")     # Skriver ut: Hei, Erik !

Funksjoner kan også returnere en verdi:

def areal_rektangel(lengde, bredde):
    return lengde * bredde

a = areal_rektangel(5, 3)
print("Arealet er", a)    # Skriver ut: Arealet er 15

Funksjoner gjør koden ryddigere og enklere å gjenbruke. Tenk på en funksjon som en liten maskin: du putter inn noe (argumenter), maskinen gjør sitt, og du får noe tilbake (returverdi).

✏️Eksempel 3: Beregne gjennomsnitt

Skriv en Python-funksjon som beregner gjennomsnittet av en liste med tall.

def gjennomsnitt(talliste):
    total = 0
    for tall in talliste:
        total = total + tall
    return total / len(talliste)

karakterer = [4, 5, 3, 6, 5, 4]
snitt = gjennomsnitt(karakterer)
print("Gjennomsnittet er", round(snitt, 2))

Eksempel på kjøring:

Gjennomsnittet er 4.5

Her bruker vi:
- len(talliste) for å finne antall elementer i listen
- En for-løkke for å summere alle tallene
- round() for å avrunde svaret

📝Oppgave 9.5

Hva skrives ut av følgende Python-kode?

a
print(3 + 4 * 2)
b
print(2 ** 4)
c
print(15 // 4)
d
print(15 % 4)
📝Oppgave 9.6

Skriv et Python-program som ber brukeren om to tall og skriver ut summen, differansen, produktet og kvotienten.

📝Oppgave 9.7

Skriv et Python-program som ber brukeren om en pris og en rabattprosent, og beregner ny pris etter rabatten. Bruk en funksjon.

📝Oppgave 9.8

Skriv et Python-program som skriver ut gangetabellen for et tall brukeren velger (fra 1 til 10). For eksempel, hvis brukeren skriver inn 7, skal programmet skrive ut: 7 1 = 7, 7 2 = 14, osv.

Oppsummering

I dette kapittelet har du lært:

- Variabler: Navn som lagrer verdier: pris = 500
- Regneoperatorer: +, -, *, /, heltallsdivisjon //, rest % og potens **
- If-setninger: Lar programmet velge vei ut fra en betingelse — husk kolon og innrykk!
- Løkker: for i in range(n) gjentar kode n ganger.
- Funksjoner: Gjenbrukbare kodeblokker definert med def.

Nøkkelbegreper


BegrepForklaring
VariabelNavn på en lagret verdi
input() / print()Lese inn og skrive ut
range(n)Tallene 0,1,,n10, 1, \ldots, n-1
InnrykkViser hva som hører til if/løkke

Husk


- 10 // 3 gir 3 (heltallsdivisjon), 10 % 3 gir 1 (rest), 2 ** 3 gir 8 (potens)
Repetisjonsoppgaver
Din fremgang
0deloppgaver0 / 4 oppgaver

Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.