Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.3 kB
1
Indexable
Never
# Tee tehtävän 1 ratkaisu tänne
class Muusikko:
    def __init__(self, nimi, soitin):
        self.__nimi = nimi
        self.__soitin = soitin
        self.__kokemus = 0

    def __str__(self):
        return f"{self.__nimi}, soitin: {self.__soitin}. Kokemus: {self.__kokemus}"

    def kokemus(self):
        return self.__kokemus

    def soita(self):
        self.__kokemus += 1

class Orkesteri:
    def __init__(self):
        self.__muusikot = []

    def lisaa_muusikko(self, muusikko):
        self.__muusikot.append(muusikko)

    def soita(self):
        for muusikko in self.__muusikot:
            muusikko.soita()

    def __str__(self):
        if len(self.__muusikot) == 0:
            return "Orkesteri (soittokertoja 0, jäsenten kokemuksen keskiarvo: 0.0)"

        soittokertoja = self.__muusikot[0].kokemus()
        keskiarvo = 0.0
        for muusikko in self.__muusikot:
            soittokertoja = max(soittokertoja, muusikko.kokemus())
            keskiarvo += muusikko.kokemus()

        keskiarvo /= len(self.__muusikot)

        result = f"Orkesteri (soittokertoja {soittokertoja}, jäsenten kokemuksen keskiarvo: {keskiarvo})"
        for muusikko in self.__muusikot:
            result += "\n" + str(muusikko)

        return result