Funksjoner#

Vi kan tenke på en funksjon som en spesifikk oppgave som kan inneholde flere instruksjoner. For å kjøre en funksjon gjør vi et kall på funksjonen.

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

hils()
Hei!

Når vi skriver hils() gjør vi et kall på funksjonen. Da gjennomføres det som står med innrykk.

Argumenter og return-verdier#

Ofte ønsker vi å sette variabler inn i en funksjon, la gjøre funksjonen gjøre noe, og så få ut noe.

Det vi setter inn kalles funksjonens argumenter. Det vi får ut kalles funksjonens return-verdier.

def f(x):
    return 2*x 

print(f(2))
4

Når vi kjører funksjonen med funksjonskallet f(2) så skjer dette:

  • 2 settes inn i funksjonen som x

  • funksjonen returnerer to ganger x, som blir 4

Derfor skrives 4 ut.

Nå kan vi lage matematiske funksjoner!

Flere argumenter#

Vi kan gi en funksjon flere argumenter ved å skille de med komma.

def størst(a, b):
    if a >= b:
        return a
    else:
        return b
    
print(størst(2, 3))
print(størst(-2, 1))
3
1

Denne funksjonen returnerer det som er størst av enten a eller b.


Oppgaver#

Oppgave 1 👋

Lag en funksjon som tar et navn som argument og skriver ut Hei, <navn>!

Oppgave 2 🎢

I denne oppgaven skal vi lage den matematiske funksjonen \(f(x) = x^2\)

  1. Lag en funksjon f(x) som returnerer verdien x**2. Prøv den med noen verdier.

  2. Bruk en for-løkke til å sette inn tallene \([0, 10]\) i funksjonen. Skriv ut resultatene.

Oppgave 3 🧑‍🤝‍🧑

Lag en funksjon er_partall(x)som sjekker om et tall x er et partall.

Funksjonen skal returnere True om x er et partall, og False om det ikke er det.

Oppgave 4 📐

Lag en funksjon som tar lengden av to sider a og b som argumenter og returnerer lengden av den lengste siden c.

Test funksjonen med trekanten a = 3 og b = 4. Dette skal gi 5.

Oppgave 5 ➗

I denne oppgaven kan det være nyttig å se tilbake på Rest og heltallsdivisjon

Lag en funksjon er_primtall(x) som skjekker om et tall x er et primtall. Den skal returnere True dersom tallet er et primtall og False dersom det ikke er det.

Oppgave 6 🧠 (utfordring)

Pytagoreiske tripler er tre og tre tall som passer i likningen \(a^2 + b^2 = c^2\). Det enkleste eksemplet er \(a=3\), \(b=4\) og \(c=5\). Vi kan skrive det som \((3,4,5)\).

a) Skriv ut alle pytagoreiske tripler bestående av heltall under \(100\).

Primitive pytagoreiske tripler er de triplene som ikke deler en felles faktor større enn \(1\). Med andre ord er \((3,4,5)\) en primitiv pytagoreisk trippel, men ikke \((6,8,10)\) fordi \(6\), \(8\) og \(10\) deler en faktor \(2\).

b) Modifiser programmet til å bare skrive ut de primitive pytagoreiske triplene.