Oppgave 1 - Teori løkker
for i in range (start,slutt):
print iMan bruker helst for løkker når man vet hvilke verdier man skal iterere over. Hvis dette er ukjent, for eksempel ved "fortsett så lenge brukerinput ikke er 0", da må man benytte while løkke.
Code Block language python i = 0 while (i<6): print(i) i+=1
Oppgave 2 - For-løkke
Code Block | ||
---|---|---|
| ||
# printer tekst 20 ganger for i in range(0,20) def minsteTall(a,b): if a < b: return a elif b < a: print("Bolton Wanderers!") |
Oppgave 3 - While-løkke
Code Block | ||
---|---|---|
| ||
tall = return b else: return a; def minsteAvTreTall(a,b,c): if a < b && a < cint(input("Skriv inn et tall: ")) print(tall) while tall!=7: tall = int(input("Skriv inn return a elif b < a && b < c: return bet tall: ")) elif c < a && c < b: return c else: if a == b: return a elif a == c: return a elif b == c: return b #Om vi kommer ned hit betyr det at alle tallene er like else: return a #En bedre løsning som benytter en liste def minsteAvTreTallList(a,b,c): liste = [a,b,c] minste = a; for tallprint(tall) |
Oppgave 4 For-løkker
Code Block language py liste = [-4,5,3,9,3,-3,-8,8] for i in range(0,len(liste)): if (liste[i]>=0): liste[i] = 1 else: liste[i] = 0 print(liste)
Code Block language py liste = [-4,5,3,9,3,-3,-8,8] summ = 0 for i in range (0,len(liste)): summ+=liste[i] print(summ) #alternativt liste = [-4,5,3,9,3,-3,-8,8] summ = 0 for el in liste:
...
summ += el print(summ)
Oppgave 5 - Passord
...
Code Block | ||
---|---|---|
| ||
while True: passord1 = input('Skriv inn ditt passord--> ') passord2 = input('Skriv inn ditt passord på nytt--> ') if passord1 == passord2: print('Passordene er like.') elif len(passord1) != break len(passord2): else: print('Passordene har ulik lengde!') # #SammenlignerSammenligner ASCII-verdi. a har en mindre verdi enn b i ASCII-tabellen. a = 97 og b = 98 f. eks. ifelif passord1 > passord2: print('Passord 2 kommer før passord 1 i alfabetet') else: print('Passord 1 kommer før passord 2 i alfabetet') |
Oppgave
...
6 - Produkt
Code Block | ||
---|---|---|
| ||
from random import randint def lagVerb(): while True: tall1 = randint(1,10) tall2 = randint(1,10) verbprodukt = ['går','spiser','tuller','hopper','leker'] #henter ut et tilfeldig verb fra listen return verb[randint(0,len(verb)-1)] def lagNavn() tall1 * tall2 print(tall1,'*',tall2,'=',produkt) if produkt >= 70: break #alternativt from random import randint prod = 0 while prod < 70: navnx = ['Martin','Lise','Bob','Max','Balle']randint(1,10) #henter ut et tilfeldig navn fra listeny = randint(1,10) prod = x*y return navn[randint(0,len(navn)-1)] def lagAdverb(): adverb = ['fort','sakte','rart','teit','glimrende'] #henter ut et tilfeldig adverb fra listen return adverb[randint(0,len(adverb)-1)] def lagSetning(): return lagNavn() + ' ' + lagVerb() + ' ' + lagAdverb() i = 0 while i < 10: print(lagSetning()) i += 1 |
Oppgave 4
Code Block | ||
---|---|---|
| ||
def kmhToMph(kmh):
return kmh / 1.6
for i in range(10,110,10):
print(i,'km/t =',kmhToMph(i),'mph') |
Oppgave 5
print(x,"*",y,'=',prod) |
Oppgave 7 - Speedometer
Code Block | ||
---|---|---|
| ||
def to_mph(kmt):
return kmt/1.6
for kmt in range(10,111,10):
print(kmt,"km/t =",to_mph(kmt),"mph") |
Oppgave 8 - Doble for-løkker
Code Block language py matrix = [[1,3,-3,5,23],[23,1,34,13,32],[33,67,64,5,-9],[46,-6,6,64,8],[2,3,19,12,-4]]
Code Block language py matrix = [[1,3,-3,5,23],[23,1,34,13,32],[33,67,64,5,-9],[46,-6,6,64,8],[2,3,19,12,-4]] for k in range(0,len(matrix)): for t in range(0,len(matrix[k])): if (matrix[k][t]<0): matrix[k][t]*= -1 print(matrix)
Code Block language python matrix = [[1,3,-3,5,23],[23,1,34,13,32],[33,67,64,5,-9],[46,-6,6,64,8],[2,3,19,12,-4]] maks = -float('Inf') for i in range(0,len(matrix)): for j in range(0,len(matrix[i])): if (matrix[i][j] > maks): maks = matrix[i][j] print(maks)
Oppgave 9 - Badekaret
Code Block | ||
---|---|---|
| ||
capacity = 20
currentLevel = 5
while currentLevel < capacity:
print('Badekaret har', currentLevel, 'liter vann.')
currentLevel += 1
print('Badekaret er fullt.') |
Oppgave 10 - Sum av gangetabellen
Code Block | ||
---|---|---|
| ||
summ = 0
for i in range(1,11):
for j in range(1,11):
summ += i * j
print(summ) |
Oppgave 11 - Stigende sekvenser
Code Block | ||
---|---|---|
| ||
import sys
j = 1
for i in range(1,11):
k = 1
while k <= j:
sys.stdout.write(str(k) + ' ') | ||
Code Block | ||
| ||
from random import randint while True: tall1 = randint(1,10) tall2 = randint(1,10) produkt = tall1 * tall2 print(produkt) if produkt > 70: break |
Oppgave 6
Code Block | ||
---|---|---|
| ||
capacity k += 201 currentLevel = 5 while currentLevel < capacity: currentLeveli += 1 j += 1 print('Current water level is', currentLevel, 'liters.') print('The bath is full and contains', currentLevel, 'litres.') |
Oppgave
...
12 - Sjakkbrett
Code Block | ||
---|---|---|
| ||
def checkColorOfChessboard(x,y): # #wewe define a chessboard using nested arrays # #bb means black, and w means white board = [['w','b','w','b','w','b','w','b'], ['b','w','b','w','b','w','b','w'], ['w','b','w','b','w','b','w','b'], ['b','w','b','w','b','w','b','w'], ['w','b','w','b','w','b','w','b'], ['b','w','b','w','b','w','b','w'], ['w','b','w','b','w','b','w','b'], ['b','w','b','w','b','w','b','w'], ] x2 = x8 - 1x y2 = y - 1 if board[x2][y2] == 'w': print('Rute',str(x) + ','+ str(y),'er hvit') else: print('Rute',str(x) + ','+ str(y),'er svart') for x in range(1,9): for y in range(1,9): checkColorOfChessboard(x,y) |
Oppgave 8
Code Block | ||
---|---|---|
| ||
sum = 0 for i in range(1,11): for j in range(1,11 #alternativ løsning: def chess_board(x,y): if not (0<x<9 and 0<y<9): sumreturn += i * j print(sum) |
Oppgave 9
Code Block | ||
---|---|---|
| ||
def sumOfNumbers(n): "Ugyldig input" sum = 0 if x%2==1: for i in range(1,n+1): if y%2==1: sum += i return sum n = 0 x = 0 while x < 500: "svart" n += 1return "hvit" xif = sumOfNumbers(n) print(n,'is the smallest number whose sum of preceeding numbers and itself is larger than 500') |
Oppgave 10
Code Block | ||
---|---|---|
| ||
import sys j = 1y%2==1: return "hvit" return "svart" for i in range(1,119): for kj =in 1 while k <= jrange(1,9): sys.stdout.write(print("Rute",str(ki) + ' ,') k += 1 i += 1 j += 1 print(+str(j),"er",chess_board(i,j)) |