22 maja

22 maja

Ulepsz powyższy program umożliwiając opiekunowi ustawienie ilości pożywienia podawanego zwierzakowi i czasu poświęconego na zabawę z nim. Wartości te powinny wpływać na szybkość spadku poziomu głodu i nudy u zwierzaka.
# Opiekun zwierzaka
# Wirtualny pupil, którym należy się opiekować

class Critter(object):
    """Wirtualny pupil"""

    def __init__(self, name, hunger=0, boredom=0):
        self.name = name
        self.hunger = hunger
        self.boredom = boredom

    def __pass_time(self):
        self.hunger += 1
        self.boredom += 1

    def __str__(self):
        rep = "Głód oraz nuda zwierzaka: "
        rep += "Głód: " + str(self.hunger) + " Nuda: " + str(self.boredom)
        return rep

    @property
    def mood(self):
        unhappiness = self.hunger + self.boredom
        if unhappiness < 5:
            m = "szczęśliwy"
        elif 5 <= unhappiness <= 10:
            m = "zadowolony"
        elif 11 <= unhappiness <= 15:
            m = "podenerwowany"
        else:
            m = "wściekły"
        return m

    def talk(self):
        print("Nazywam się", self.name, "i jestem", self.mood, "teraz.\n")
        self.__pass_time()

    def eat(self, food):
        print("Mniam, mniam.  Dziękuję.")
        self.hunger -= food
        if self.hunger < 0:
            self.hunger = 0
        self.__pass_time()

    def play(self, fun):
        print("Hura!")
        self.boredom -= fun
        if self.boredom < 0:
            self.boredom = 0
        self.__pass_time()


def main():
    crit_name = input("Jak chcesz nazwać swojego zwierzaka?: ")
    crit = Critter(crit_name)

    choice = None
    while choice != "0":
        print \
            ("""
        Opiekun zwierzaka

        0 - zakończ
        1 - słuchaj swojego zwierzaka
        2 - nakarm swojego zwierzaka
        3 - pobaw się ze swoim zwierzakiem
        """)

        choice = input("Wybierasz: ")
        print()

        # wyjdź z pętli
        if choice == "0":
            print("Do widzenia.")

        # słuchaj swojego zwierzaka
        elif choice == "1":
            crit.talk()

        # nakarm swojego zwierzaka
        elif choice == "2":
            while True:
                how_much = int(input("Ile chcesz mu dać jedzenia? (od 1 do 5)"))
                if how_much >= 1 and how_much <= 5:
                    break
                else:
                    continue
            crit.eat(how_much)

        # pobaw się ze swoim zwierzakiem
        elif choice == "3":
            while True:
                how_much = int(input("Ile chcesz mu dać jedzenia? (od 1 do 5)"))
                if how_much >= 1 and how_much <= 5:
                    break
                else:
                    continue
            crit.play(how_much)
        #tajny wybór
        elif choice == "4":
            print(crit)
        # nieznany wybór
        else:
            print("\nNiestety,", choice, "nie jest prawidłowym wyborem.")


main()
input("\n\nAby zakończyć program, naciśnij klawisz Enter.")

Napisz program symulujący telewizor, tworząc go jako obiekt. Użytkownik powinien mieć możliwość wprowadzenia numeru kanału, oraz regulacji głośności. Zaimplementuj mechanizm umożliwiający utrzymywanie numeru kanału i głośności we właściwych zakresach. Zakresy to: numer kanału od 1-20, głośność od 0-100

#Symulacja telewizora

class tele(object):
    def __init__(self,channel=1,loudness=30):
        self.channel=channel
        self.loudness=loudness
        print("Włączyłeś telewizor!")
        print("Obecny kanał ma numer:",channel,"\n Poziom głośności wynosi: ", loudness)

    def change_channel(self,new_channel):
        self.channel=new_channel
        print("Obecny kanał to:",self.channel)

    def change_loudness(self,new_loudness):
        self.loudness=new_loudness
        print("Obecna głośność to:",self.loudness)

    def status(self):
        print("Obecny kanał to:",self.channel,"\nPoziom głośności wynosi:",self.loudness)



def main():
    telewizor = tele()


    while True:
        print("""Co chcesz zrobić?
        0 - wyłącz telewizor
        1 - zmień kanał
        2 - zmień głośność
        3 - wyświetl status""")

        choice=int(input("Wybierz: "))

        if choice == 0:
            print("Wyłączyłeś")
            break
        elif choice == 1:
            new_channel = int(input("Podaj nowy kanał: "))
            if new_channel >= 0 and new_channel <= 20:
                telewizor.change_channel(new_channel)
            else:
                print("Masz tylko 20 kanałów :(")
            continue
        elif choice==2:
            new_loudness = int(input("Podaj nową głośność: "))
            if new_loudness >= 0 and new_loudness <= 100:
                telewizor.change_loudness(new_loudness)
            else:
                print("Głośność tylko w zakresie 0-100!")
            continue
        elif choice ==3:
            telewizor.status()
            continue
        else:
            print("Nie ma takiej opcji")
            continue

main()

Symulator lokalizacji

class lokacje(object):
    def __init__(self, name, description):
        self.name = name
        self.description = description

    def place(self):
        print("[ZNAJDUJESZ SIĘ W", self.name, "]")
        print(self.description)
        print("\n")

kuchnia = lokacje("Kuchnia", "Wszystkie szafki są otwarte, na stole leży zepsute jedzenie")
salon = lokacje("SALONIE", "Telewizor jest zniszczony, a kanapa podrapana. Czuć dziwny zapach,")
toaleta = lokacje("TOALECIE", "Wszystko zniszczone. Same kawałki.")
sypialnia = lokacje("SYPIALNI", "Na wielkim łóżku widać ślady krwii.")
magazynek = lokacje("MAGAZYNKU", "Wszystko opustoszało, ale widać jedną puszkę fasoli!")

def wybieranie():
    while True:
        print("Oto symulator lokacji.")
        print("""=========
kuchnia
salon
toaleta
sypialnia
magazynek
==========""")
        print("Wyjście - exit")
        print("Co wybierasz?")
        choice = input(">>")
        if choice == "kuchnia":
            kuchnia.place()
        elif choice == "salon":
            salon.place()
        elif choice == "toaleta":
            toaleta.place()
        elif choice == "sypialnia":
            sypialnia.place()
        elif choice == "magazynek":
            magazynek.place()
        elif choice == "exit":
            break
        else:
            print("Coś poszło nie tak. Spróbuj ponownie")

wybieranie()

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *