Skip to content

Ongelma opiskelijarekisteri osa2:n tarkistuksessa #32

@mcturkki

Description

@mcturkki

Tällä lähdekoodilla
nimet=[]
suoritus=[]
def lisaa_opiskelija(opiskelijat, nimi:str):
nimet.append(nimi)

def tulosta(opiskelijat, nimi:str):
summa=[]
print(nimi+": ")
if nimi not in nimet:
print("ei löytynyt ketään nimellä", nimi)
print(f" suorituksia {len(suoritus)} kurssilta: " )
for i in range(0,len(suoritus)):
print(" "+' '.join(map(str,suoritus[i])))
summa.append(suoritus[i][1])
print("keskiarvo:", sum(summa)/len(suoritus) )

kurssi=()
def lisaa_suoritus(opiskelijat, nimi:str, kurssi:tuple): #Kurssi vastaa sekä kurssin nimeä että arvosanaa
suoritus.append(kurssi)

opiskelijat={}
lisaa_opiskelija(opiskelijat, "Pekka")
lisaa_suoritus(opiskelijat, "Pekka", ("Ohpe", 3))
lisaa_suoritus(opiskelijat, "Pekka", ("Tira", 2))
tulosta(opiskelijat, "Pekka")

TMC tulostaa virheen:
5 != 2 : Ohjelmasi pitäisi tulostaa 2 riviä kun suoritetaan seuraava koodi:
opiskelijat = {}
lisaa_opiskelija(opiskelijat, "pekka")
tulosta(opiskelijat, "pekka")
Nyt se tulostaa 5 riviä:
pekka:
suorituksia 2 kurssilta:
Ohpe 3
Tira 2
keskiarvo: 2.5

En ymmärrä mistä tämä tulee, kaikki lähdekoodissa vaikuttaa kuitenkin olevan kunnossa?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions