Programmeringskurs: 1.5 Funksjoner
Importere ferdige funksjoner
Vi har sett at vi kan definere egne funksjoner i Python. I tillegg finnes det mange ferdige funksjoner som vi kan bruke. Disse har andre programmere laget for oss. Det er ikke alle funksjoner du har brukt for i alle programmer. Derfor ligger de ofte i pakker, eller moduler, som vi må importere for å kunne bruke funksjonene.
En modul er en tilleggspakke i Python som består av funksjoner og konstanter. Vi kan importere innhold fra en modul inn i koden vår slik:
from modul_navn import funksjon1, funksjon2, konstant1
Vi kan importere alt innholdet i en modul ved å skrive
from modul_navn import *
Det lønner seg ofte ikke å importere hele modulen, med mindre det er gode grunner til det. Programmene våre blir tregere og feilmeldingene dårligere.
Lag et program som regner ut arealet av en sirkel med radius #r = 5#.
Løsning
På første linje i koden importerer vi pi fra modulen pylab. Deretter regner vi ut arealet og skriver ut svaret.
<> | Kodeeditor | |
from pylab import pi r = 5 areal = pi*r**2 print(f"Arealet av en sirkel med radius {r} er {areal:.2f}.") |
Resultatet blir slik:
Arealet av en sirkel med radius 5 er 78.54
Lag et program der brukeren kan skrive inn lengdene av to kateter #a# og #b# i en rettvinklet trekant, og så regnes lengden av hypotenusen #c# ut.
Løsning
Vi lager et program der brukeren skriver inn katetene #a# og #b#. Vi må bruke float() til å konvertere den innskrevne teksten til desimaltall. Vi vil bruke pytagorassetningen til å regne ut hypotenusen #c#.
#c = \sqrt{a^2 + b^2}#
Kvadratrotfunksjonen sqrt() må importeres fra modulen pylab
<> | Kodeeditor | |
from pylab import sqrt #\text{#}# Henter katetene fra brukeren av programmet a = float(input("a = ")) b = float(input("b = ")) #\text{#}# Bruker pytagorassetningen til å regne ut hypotenusen c = sqrt(a**2 + b**2) print("c =", c) |
Resultatet blir slik:
a = 3
b = 4
c = 5.0
Modulen pylab er en pakke som har svært mange nyttige funksjoner for matematikk og naturfag. Nedenfor ser du en oversikt over funksjoner og konstanter du kan få bruk for.
pi |
Matematisk konstant, #\pi\;(3,14159…)#. |
e |
Matematisk konstant, eulertallet #(2,71828…)#. |
sqrt(tall) |
Gir deg kvadratroten av tallet. |
sin(rad) |
Gir deg sinus til vinkelen rad. |
cos(rad) |
Gir deg cosinus til vinkelen rad. |
tan(rad) |
Gir deg tangens til vinkelen rad. |
degrees(rad) |
Gjør om vinkelen rad fra radianer til grader. |
radians(deg) |
Gjør om vinkelen deg fra grader til radianer. |
ceil(tall) |
Runder tallet opp til nærmeste heltall. |
floor(tall) |
Runder tallet ned til nærmeste heltall. |
exp(x) |
Gir deg #e^x#. |
log(x) |
Gir deg den naturlige logaritmen til tallet #x#, #\ln{x}#. |
log10(x) |
Gir deg (den briggske) logaritmen til #x#, #\log{x}#. |
asin(x), acos(x)og atan(x) |
Gir deg henholdsvis vinkelen #\text{sin}^{-1}(x)#, #\text{cos}^{-1}(x)# og #\text{tan}^{-1}(x)# til tallet #x#. Vinkelen du får er oppgitt i radianer. |