Øving 3 – Oppgave 2
Du blir bedt om å lage et program som lagrer informasjon om været som har vært i løpet av én uke. Programmet skal lagre informajson om regnmengde(mm), vind(styrke, m/s) og temperatur(grader celcius) for hver av dagene. Programmet skal spørre brukeren om å legge inn informasjonen ved hjelp av en for-løkke som går gjennom alle dagene.
a)
Skriv programmet som beskrevet over.
Løsningsforslag:
## a) svar days = ['Man','Tirs','Ons','Tor','Fre','Lør','Søn'] week = {} # Initierer tom dict for d in days: # Itererer over dagene i uka print('Været på', d,':') # Viser hvilken dag man er kommet til regn_ny = int(input('Hvor mange mm regn? ')) vind_ny = int(input('Hvor mange m/s vind? ')) temp_ny = int(input('Hvor mange grader celcius? \n')) week[d] = regn_ny, vind_ny, temp_ny # Legger informasjon for dagen i en ny key print(week)
b)
Hent ut informasjonen om regn, vind og temperatur i hver sin liste, regn ut og print gjennomsnittet for alle tre listene med en beskrivende tekst.
Løsningsforslag:
## b) svar import numpy as np # Initierer lister for informasjonen som skal hentes fra week regn = [] vind = [] temp = [] for d in week: # Itererer over key'ene (dagene) i week regn.append(week[d][0]) # For hver dag, legg til informasjon om regn (første tallet i value'ene) vind.append(week[d][1]) # For hver dag, legg til informasjon om vind (andre tallet i value'ene) temp.append(week[d][2]) # For hver dag, legg til informasjon om temperatur (tredje tallet i value'ene) print('Gjennomsnittlig mm regn var: ',np.mean(regn)) print('Gjennomsnittlig m/s vind var: ',np.mean(vind)) print('Gjennomsnittlig temperatur var: ',np.mean(temp))
c)
Bruk innebygde funksjoner til å finne dagene i uka som hadde enten i) vind over 10 m/s, ii) temperatur lavere enn 5c eller iii) mer enn 1mm regn. Legg disse dagene i en liste og print dem ut til konsoll med en beskrivende tekst.
Løsningsforslag:
### c) svar dager_vind = [] dager_temp = [] dager_regn = [] # Finner dager med >10 m/s vind for key,value in week.items(): if value[1] > 10: dager_vind.append(key) elif value[2] < 5: dager_temp.append(key) elif value[0] > 1: dager_regn.append(key) else: print('Bare fint vær jo!') print('Dagene med mer enn 10 m/s vind var:', dager_vind) print('Dagene med temperatur lavere enn 5c var:', dager_temp) print('Dagene med mer enn 1 mm regn var:', dager_regn)