Oppg-3-2

Ø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)