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,2120): print("Bolton Wanderers!") |
Oppgave 3 - While-løkke
Code Block | ||
---|---|---|
| ||
tall = int(input("Skriv inn et tall: ")) print(tall) while tall!=7: tall = int(input("Skriv inn et tall: ")) |
...
print(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.') break elif (len(passord1) != len(passord2)): print('Passordene har ulik lengde!') break #Sammenligner # Sammenligner ASCII-verdi. a har en mindre verdi enn b i ASCII-tabellen. a = 97 og b = 98 f. eks. if elif passord1 > passord2: print('Passord 2 kommer forfør passord 1 i alfabetet') else: print('Passord 1 kommer forfør passord 2 i alfabetet') |
Oppgave
...
6 - Produkt
Code Block | ||
---|---|---|
| ||
from random import randint ikkesyv =while True while (ikkesyv):: tall1 = randint(1,10) xtall2 = randint(01,10) produkt if (x != 7): = tall1 * tall2 print(tall1,'*',tall2,'=',produkt) if produkt >= 70: print(x) break #alternativt from random import randint prod = 0 while prod < 70: x = randint(1,10) else:y = randint(1,10) prod = x*y ikkesyv = False |
...
print(x,"*",y,'=',prod) |
Oppgave 7 - Speedometer
Code Block | ||
---|---|---|
| ||
def kmhToMphto_mph(kmhkmt): return kmh kmt/ 1.6 for ikmt in range(10,110111,10): print(ikmt,'"km/t ='",kmhToMphto_mph(ikmt),'"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) | python | from random import randint while True: tall1 = randint(1,10) tall2 = randint(1,10) produkt = tall1 * tall2 print(produkt) if produkt > 70: break |
...
summ += i * j
print(summ) |
Oppgave 11 - Stigende sekvenser
Code Block | ||
---|---|---|
| ||
capacityimport sys j = 20 currentLevel 1 for i in range(1,11): k = 51 while currentLevelk <= capacityj: currentLevel sys.stdout.write(str(k) + ' ') k += 1 print('Current water level is', currentLevel, 'liters.') print('The bath is full and contains', currentLevel, 'litres.') |
...
i += 1
j += 1
print() |
Oppgave 12 - Sjakkbrett
Code Block | ||
---|---|---|
| ||
def checkColorOfChessboard(x,y): #we# we define a chessboard using nested arrays #b# b 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" sumif x%2= 0 =1: for i in range(1,n+1)if y%2==1: sum += i return sum"svart" n = 0 x = 0 while x < 500: 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): kfor j =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)) |