Variabler og syntaks#
En variabel gir et navn til et objekt. Vi lager en variabel ved å gi den et navn og en verdi. Dette gjør vi med likhetstegnet = i Python.
Typer#
Variabler kan være mange typer objekter.
a = 1 # Heltall (integer)
b = 2.3 # Flyttall eller desimaltall (float)
c = "Hei!" # Tekst (string)
d = True # Sannhetsverdi (boolean)
e = [2, 3] # Liste (list)
f = {"NO" : "Norway"} # Ordbok (dictionary)
Merk deg
I Python bruker vi punktum . for desimaltall, ikke komma ,.
Kommentarer#
Noen ganger ønsker vi å legge inn kommentarer i koden for å gjøre den mer lesbar.
# Dette er en kommentar på en linje.
"""
Dette er en kommentar over flere linjer.
Vi kan skrive så mye vi vil her inne.
"""
print()-funksjonen#
For å få noe ut av programmene våre, kan vi bruke print()-funksjonen.
a = 2
b = 3
c = a + b
print(c)
5
Vi kan skrive ut flere ting ved å skille tingene med komma.
a = 2
b = 3
c = a + b
print(a, "pluss", b, "er lik", c)
2 pluss 3 er lik 5
f-strings
print()-funksjonen kan også skrive ut en kombinasjon av tekst og variabler ved å bruke f-strings. Da setter vi en f før en string, og setter variabler inn med krøllparanteser {}.
a = 2
b = 3
c = a + b
print(f"{a} pluss {b} er lik {c}")
2 pluss 3 er lik 5
Regning og formler#
Python har noen symboler for regning.
Addisjon bruker symbolet
+Subtraksjon bruker symbolet
-Multiplikasjon bruker symbolet
*Divisjon bruker symbolet
/Potenser bruker symbolet
**
\(2+3\)
2+3
\(2-3\)
2-3
\(2\cdot 3\)
2*3
\(\frac{2}{3}\)
2/3
\(2^3\)
2**3
Viktig!
Husk å bruke paranteser dersom du jobber med uttrykk som inneholder flere ledd!
Skal man for eksempel regne ut \(\frac{1}{2+1}\), så må man skrive 1/(2+1).
Rest og heltallsdivisjon#
Noen ganger ønsker vi å finne ut hvor mange ganger et tall går opp i et annet tall. Til det bruker vi operatoren //. Hvis vi ønsker å finne hva resten blir bruker vi operatoren %. Denne operatoren kalles modulusoperatoren.
print(7 // 3)
print(7 % 3)
2
1
Vi ser at
7 // 3gir2fordi \(3\) går opp i \(7\) to ganger.Vi ser at
7 % 3gir1fordi resten blir \(1\) når \(3\) har gått opp i \(7\) to ganger.
Dersom resten blir 0 så er tallet delbart. Med andre ord kan vi sjekke om a er delbart med b ved å sjekke om a % b gir 0.
print(187 % 11)
print(187 // 11)
0
17
Programmet over viser at
\(187\) er delbart med \(11\) fordi resten er
0… og at \(11\) går opp
17ganger i tallet \(187\).
Oppgaver#
Oppgave 1 ❔
Bestem hva som skrives ut av programmene uten å kjøre de selv!
a = 2
b = 3
c = a + b
print(a + c)
a = "Hei"
b = "Hei"
print(a + b)
a = "7"
b = "15"
print(a + b)
a = 10
b = 2
c = 4
x = a - b * (c + 1)
print(x)
a = 2
a = a + 2
a = a * 3
a = a / 6
print(a)
Utskrift #0: Utskrift #1: Utskrift #2: Utskrift #3: Utskrift #4:
Oppgave 2 ⭕
Regn ut følgende matematiske uttrykk med Python
\(\quad2\left( 1 + \frac{1}{7}\cdot \frac{2^3}{2} \right)\)
\(\quad\frac{1}{2}\left( \frac{3\cdot 5}{53} + 6 \right)\)
\(\quad2\left( \frac{3}{2} + \frac{4^2}{226} \right)\)
Løsningsforslag
Her er et løsningsforslag. Det kan være flere måter å gjøre det på.
print(2 * (1 + (1/7) * (2**3 / 2)))
print((1/2) * ((3*5 / 53) + 6))
print(2 * ((3/2) + (4**2 / 226)))
3.142857142857143
3.141509433962264
3.1415929203539825
Ser du at det er et mønster i svarene?
Det er fordi uttrykkene kan regnes ut til å være \(\frac{22}{7}\), \(\frac{333}{106}\) og \(\frac{355}{113}\). Disse brøkene blir nærmere og nærmere \(\pi\)! 🤓
Oppgave 3 🔢
Sjekk om disse tallene er delbare med Python.
Er \(112\) delbart med \(7\)?
Er \(171\) delbart med \(9\)?
Er \(1157\) delbart med \(13\)?
Finn også hvor mange ganger det andre tallet går opp i det første.
Løsningsforslag
a = 112
b = 7
print(b, "går opp i", a, 112 // 7, "ganger.")
print("Resten blir", 112 % 7)
7 går opp i 112 16 ganger.
Resten blir 0
Hvis vi bytter ut a og b kan vi se at alle tallene er delbare fordi vi får \(0\) i rest.