IN1000 høst2024
Introduksjon til objektorientert programmering (Python)
04.11: Tall-liste med løkker
a) Lag et program med en while-løkke som ber bruker om å taste inn fem tall og lagrer disse som heltall i en liste kalt tall
. Pass på at du lagrer den riktige datatypen.
b) Utvid programmet slik at det regner ut summen av tallene ved hjelp av en annen løkke. Skriv så ut resultatet.
c) Skriv ut alle verdiene i listen som er mindre enn 10.
d) Skriv ut en beskjed om verdien 5 finnes i listen ved hjelp av en while-løkke.
e) Flytt koden fra b), c) og d) til hver sin prosedyre, som alle tar inn tall
-listen som parameter. Kall hver prosedyre til slutt.
BONUS: Skriv om oppgaven med for-løkker istedenfor while-løkker.
a)
tall = []
teller = 0
while teller < 5:
inp_str = input("Oppgi et tall: ")
inp_tall = int(inp_str)
tall.append(inp_tall)
teller += 1
ELLER:
tall = []
teller = 0
while teller < 5:
inp = int(input("Oppgi et tall: "))
tall.append(inp)
teller += 1
b)
teller = 0
total = 0
while teller < len(tall):
total += tall[teller]
teller += 1
print("Sum av tallene i listen:", total)
c)
teller = 0
print("Tall under 10:")
while teller < len(tall):
if tall[teller] < 10:
print(tall[teller])
teller += 1
d)
finnes_fem = False
teller = 0
while teller < len(tall):
if tall[teller] == 5:
finnes_fem = True
teller += 1
if finnes_fem:
print("Fem finnes i listen")
else:
print("Fem finnes ikke i listen")
e)
def oppgave_b(tall)
teller = 0
total = 0
while teller < len(tall):
total += tall[teller]
teller += 1
print("Sum av tallene i listen:", total)
def oppgave_c(tall)
teller = 0
print("Tall under 10:")
while teller < len(tall):
if tall[teller] < 10:
print(tall[teller])
teller += 1
def oppgave_d(tall)
finnes_fem = False
teller = 0
while teller < len(tall):
if tall[teller] == 5:
finnes_fem = True
teller += 1
if finnes_fem:
print("Fem finnes i listen")
else:
print("Fem finnes ikke i listen")
tall = []
teller = 0
while teller < 5:
inp_str = input("Oppgi et tall: ")
inp_tall = int(inp_str)
tall.append(inp_tall)
teller += 1
oppgave_b(tall)
oppgave_c(tall)
oppgave_d(tall)
Bonus
For-løkke med indekser
def oppgave_b(tall):
total = 0
for i in range(len(tall)):
total += tall[i]
print("Sum av tallene i listen:", total)
def oppgave_c(tall):
print("Tall under 10:")
for i in range(len(tall)):
if tall[i] < 10:
print(tall[i])
def oppgave_d(tall):
fem_finnes = False
for i in range(len(tall)):
if tall[i] == 5:
fem_finnes = True
if fem_finnes:
print("Fem finnes i listen")
else:
print("Fem finnes ikke i listen")
alle_tall = []
for i in range(5):
inp_str = input("Oppgi et tall: ")
inp_tall = int(inp_str)
alle_tall.append(inp_tall)
oppgave_b(tall)
oppgave_c(tall)
oppgave_d(tall)
For-hvert-løkke
def oppgave_b(tall):
total = 0
for t in tall:
total += t
print("Sum av tallene i listen:", total)
def oppgave_c(tall):
print("Tall under 10:")
for t in tall:
if t < 10:
print(t)
def oppgave_d(tall):
fem_finnes = False
for t in tall:
if t == 5:
fem_finnes = True
if fem_finnes:
print("Fem finnes i listen")
else:
print("Fem finnes ikke i listen")
alle_tall = []
for i in range(5):
inp_str = input("Oppgi et tall: ")
inp_tall = int(inp_str)
alle_tall.append(inp_tall)
oppgave_b(tall)
oppgave_c(tall)
oppgave_d(tall)