# NB! Det er ikke meningen at programmet skal kj?re, har bare latt koden v?re ukommentert for at filen skal v?re litt mer fargerik :P #----------OPPGAVE 2D---------- # Utregning # Vi reverserer regnestykkene, ogs? pr?ver vi ut alle mulige kombinasjoner # og rekkef?lger av +, -, *, / systematisk og ser hva som passer best assert funk(1*2 + 3, 2) * 3 == 21 21/3 == 7 # Reversering 1*2 + 3 == 5 # Argument 1 2 == 2 # Argument 2 7 == 5+2 # Passer! 7 != 5-2 # Passer ikke... 7 != 2-5 # Passer ikke... 7 != 5*2 # Passer ikke... 7 != 5/2 # Passer ikke... 7 != 2/5 # Passer ikke... assert funk(1+2, 3) * 2 == 12 12/2 == 6 # Reversering 1+2 == 3 # Argument 1 3 == 3 # Argument 2 6 == 3+3 # Passer! 6 != 3-3 # Passer ikke... 6 != 3*3 # Passer ikke... 6 != 3/3 # Passer ikke... assert funk(2, 2) + 3 == 7 7-3 == 4 # Reversering 2 == 2 # Argument 1 2 == 2 # Argument 2 4 == 2+2 # Passer! 4 != 2-2 # Passer ikke... 4 != 2*2 # Passer ikke... 4 != 2/2 # Passer ikke... # Svar return a + b #----------OPPGAVE 2E---------- # Utregning ordbok["ff"] = [4, 7, 4] ordbok["ff"].append(7) ordbok["ff"] = [4, 7, 4, 7] len(ordbok["ff"]) = 4 # Svar 4 #----------OPPGAVE 2F---------- # Utregning total = 0 i = 0 while liste[i]>0: (iterasjon 1) total = 1 i = 1 while liste[i]>0: (iterasjon 2) total = 2 i = 2 i = len(liste)-1 while liste[i]>0: (iterasjon 1) total = 4 i = 23 while liste[i]>0: (iterasjon 2) total = 7 i = 22 i = 0 while liste[i] > len(liste): (kj?res ikke) # Svar 7 #----------OPPGAVE 2G---------- # Utregning i = 1 k = 3 a = funk1( funk2(i+1) + funk3(k) - 1 ) a = funk1( funk2(1+1) + funk3(k) - 1 ) a = funk1( funk2(2) + funk3(k) - 1 ) a = funk1( 4 + funk3(k) - 1 ) a = funk1( 4 + funk3(3) - 1 ) a = funk1( 4 + 5 - 1 ) a = funk1( 8 ) a = 9 # Her er det egentlig ingen vits ? gj?re beregninger. Her er funk4() det # ytterste kallet og den bare returnerer tallet 4 uansett argument. S? # uansett hva resultatet av beregningene blir vil vi f? 4 til slutt... b = funk4( funk5( funk6(2) ) + a ) b = 4 # Her er det egentlig ingen vits ? gj?re beregninger. Her er funk4() det # ytterste kallet og den bare returnerer tallet 4 uansett argument. S? # uansett hva resultatet av beregningene blir vil vi f? 4 til slutt... c = funk4( funk1(a+b) + funk2(funk3(funk6(1))) + funk5(b*a) - funk6(b) ) c = 4 # Svar 9, 4, 4 #----------OPPGAVE 2H---------- # Utregning matrise[0][2] = 77 matrise[7][1] = 23 77 + 23 = 100 # Svar 100 #----------OPPGAVE 2I---------- # Utregning # Det er et m?nster her. For bokstaven d, doble tallet. For tallene 1-8, legg til det tallet. For tallene 0 og 9, sett verdien til det tallet. tall = 0 "1" tall = tall + 1 tall = 1 "1d" tall = tall * 2 tall = 2 "1d7" tall = tall + 7 tall = 9 "1d7d" tall = tall * 2 tall = 18 "1d7d8" tall = tall + 8 tall = 26 # Svar 26 #----------OPPGAVE 2J---------- # Utregning # Se tegning # Svar 2 #----------OPPGAVE 2K---------- # Utregning # Se tegning # Svar 2 #----------OPPGAVE 2L---------- # Utregning # Det lureste er ? ta det st?rste tallet, doble det, ogs? plusse resten # Men det finnes ingen perfekt metode, man m? bare pr?ve seg fram litt tall = 0 "8" tall = tall + 8 tall = 0 "8d" tall = tall * 2 tall = 16 "8d7" tall = tall + 7 tall = 23 # Svar "8d7"