""" Oppgave 1 Hva skrives ut her? Diskuter med gruppen. """ x = 3 while x < 10: x += 1 print(x) # Det som skrives ut er 10 """ Oppgave 2 Skriv et program med en variabel a med verdien 1 og en while-l?kke. For hver runde i while-l?kken skal variabelen a ganges med 2. L?kken skal v?re ferdig n?r verdien av a er st?rre enn 100. Skriv s? ut verdien av a. Hvilken verdi blir skrevet ut? """ a = 1 while a < 100: a = a * 2 #Det som skrives ut er 128. a = 1 --> 2 --> 4 --> 8 --> 16 --> 32 --> 64 (dette er det siste tallet som g?r inn i while-l?kken) --> 128 """ Oppgave 3 Hva tror du skrives ut p? skjermen av programmet under? Diskuter med gruppen. """ tekst = ["hadet", "p?", "badet", "din", "gamle", "sjokolade"] indeks = 0 while indeks < len(tekst): print(tekst[indeks]) indeks += 2 #Det som blir skrevet ut er "hadet", "badet", "gamle". #Vi henter ut indeks 0 fra listen, s? ?ker vi indeks med 2, og henter ut indeks 2 fra listen osv. """ Oppgave 4 Skriv et program med en prosedyre print_hei, prosedyren skal skrive ut teksten ¡°Hei¡± til skjermen. Definer en variabel a med en verdi 5 og lag en while-l?kke, l?kken skal kalle prosedyren print_hei. Bruk variabelen a slik at l?kken er ferdig etter du har kalt print_hei 5 ganger. L?s oppgaven b?de ved hjelp av while-l?kke og for-l?kke: """ def print_hei(): print("Hei") # L?sning med while-l?kke: a = 5 while a > 0: print_hei() a -= 1 # Man kan trekke fra telleren (a) istedenfor ? legge til. # L?sning med for-l?kke: for i in range(5): print_hei() """ Oppgave 5 Skriv et program som inneholder en while-l?kke. Inne i l?kken skal bruker bes om ? taste et tall. Dersom tallet ikke er 10, skal l?kken fortsette ? be om tall. N?r bruker taster inn tallet 10, skal brukeren f? beskjeden ¡°Du har tastet inn tallet 10. Programmet avsluttes ¡­¡± f?r programmet s? avslutter. Utfordring: summer sammen alle tallene brukeren skriver inn frem til 10 blir tastet. N?r 10 tastes inn skrives summen ut. Dvs. hvis bruker taster sekvensen 1 - 3 - 4 - 10, skrives det ut ¡°Sum er: 8¡± f?r programmet avsluttes. """ sumTall = 0 tall = int(input("Skriv inn et tall. Tast 10 for ? avslutte.")) while tall != 10: sumTall += tall tall = int(input("Skriv inn et tall. Tast 10 for ? avslutte.")) print("Sum er:" , sumTall) """ Oppgave 6 Hva skrives ut p? skjermen av programmer under? Her kan det v?re nyttig ? skrive ned verdiene av a og b for hver iterasjon av l?kken. """ a = 10 b = 1 while a > 0 : b = b * 2 a = a - b print("a =", a) print("b =", b) # Det som skrives ut er: # "a = -4" # "b = 8" # Den siste gangen programmet g?r inn i whilen, er a = 4 og b = 4. Inni whilen ?kes b til 8, og a blir da 4 - 8 som er -4. # Deretter g?r ikke programmet inn i l?kken igjen, fordi utrykket i whilen ikke stemmer lenger. """ Oppgave 7 Gitt mengden (!NB ikke liste) : """ tall_rekke = {3, 6, 8, 1} #Husk at mangder ikke har indekser! storrelsenPaaMengden = len(tall_rekke) sumTall = 0 for i in range(storrelsenPaaMengden): #Forteller kun hvor mange ganger vi m? hente ut et element, ikke hvilket element vi skal hente ut. sumTall += tall_rekke.pop() #henter ut og sletter et vilk?rlig element i mengden. Merk at siden den sletter elementet etterp?, har ikke rekkef?lgen noe ? si. Vi m?ter ikke det samme elementet flere ganger. print(sumTall) """ Oppgave 8 Skriv en prosedyre ¡°storst_av_to¡± som tar imot to tall som parametre og skriver ut verdien til det st?rste tallet. """ def finnStoerste(tall1, tall2): if tall1 > tall2: print(tall1) elif tall2 > tall1: print(tall2) else: print("De er like store") """ Oppgave 9 Hva skrives ut her? """ def skriv_historie(forst, andre, tredje) : print(forst, ¡°dro paa ferie med ¡°, tredje, ¡°de ville dra uten ¡°, andre, ¡° men ¡°, andre, ¡°snek seg med i bagasjerommet..¡±) navn1 = ¡°Silje¡± navn2 = ¡°Ole ¡± navn3 = ¡°Jakob¡± navneliste = [¡°Emilie¡±, ¡°Haakon¡±, ¡°Yulai¡±] skriv_historie(¡°Kari¡±, ¡°Per¡±, ¡°Martin¡±) skriv_historie(navneliste[0], navn3, navn1] skriv_historie(navn2 + navn3, navneliste[1], navneliste[2]) #1: Kari dro paa ferie med Martin de ville dra uten Per, men Per snek seg med i bagasjerommet..¡± #2: Emilie dro paa ferie med Silje de ville dra uten Jakob, men Jakob snek seg med i bagasjerommet..¡± #3: OleJakob dro paa ferie med Haakon de ville dra uten Yulai, men Yulai snek seg med i bagasjerommet..¡± """ Oppgave 10 (Du skal n? endre p? oppgave 8): Skriv en funksjon ¡°storst_av_to¡± som tar imot to tall som parametre og returnerer det st?rste tallet. Deretter skrives tallet ut etter funksjonskallet. """ def stoerst_av_to(tall1, tall2): #Her tar jeg ikke h?yde for at tallene kan v?re like. if tall1 > tall2: return tall1 #Ettersom programmet hopper ut av funksjonen hvis den returnerer, trenger vi ikke ha en else. return tall2 #Dersom programmet ikke har returnert f?r denne linjen, kan vi trygt g? utifra at tall2 er st?rre enn tall1, og vi kan returnere tall2. #Funksjonen over er den samme som funksjonen under: def stoerst_av_to(tall1, tall2): if tall1 > tall2: return tall1 else: return tall2