Cześć wszystkim,
Jestem na etapie zmiany kierunku swojej kariery, a ponadto jest to mój pierwszy wpis na forum zatem proszę o wyrozumiałość jeśli palnę jakieś banalne czy wręcz śmieszne pytanie.
Jestem na etapie nauki Python'a i pod rękę wpadła mi książka z tytułu tego posta "Python dla każdego". Po każdym rozdziale autor przedstawia kilka zadań, dzięki którym można pobawić się kodem i zmajstrować coś bazując na wcześniej poznanych regułach, funkcjach itp. Wprawdzie w sieci można wybiórczo znaleźć odpowiedzi na wybrane pytania, ale w związku z tym, że przerabiam tą książke od samego początku to pozwoliłem sobie uruchomić taki temat, gdzie będę wrzucał swoje "rozwiązania" tych zadań. Kod zapewne nie jest pierwszej jakości, ponieważ samym językiem zacząłem się głębiej interesować od tygodnia lub dwóch, ale już coś tam potrafię naskrobać.
Jeśli to możliwe, to bardzo proszę tych bardziej doświadczonych programistów o wsparcie i ewentualne porady co do jakości kodu, zmian w nim lub po prostu czy widzą jakiś totalny fakap w danym rozwiązaniu. Oczywiście pozostałych forumowiczów też zachęcam do dyskusji, a jeśli ktoś z was jest na etapie rozwiązywania tych zadań - o wrzucanie swoich rozwiązań w tym temacie.
Rozdział 4, zadanie nr 4
Utwórz grę, w której komputer wybiera losowo słowo, które gracz musi odgadnąć. Komputer informuje gracza, ile liter znajduje się w wybranym słowie. Następnie gracz otrzymuje pięć szans na zadanie pytania, czy jakaś litera jest zawarta w tym słowie. Komputer może odpowiedzieć tylko „tak” lub „nie”. Potem gracz musi odgadnąć słowo.
#Gra, w której komputer wybiera losowe słowo, a gracz musi je odgadnąć
import random
#Najpierw tworzę krotkę z zestawieniem słów
words = ("karuzela", "autostrada", "pałac", "miasto", "doniczka", "pielucha", "bank", "stolica", "lodówka")
#Następnie komputer losuje z zestawu słów jedno
word = random.choice(words)
#Przypisuję zmienne
correct = word
tries = 0
#Rozpoczynamy grę
print("\t\tWitaj w grze 'Słowny Mix'!")
print("Wybrałem dla Ciebie pewne słowo, a Twoim zadaniem będzie je odgadnąć.")
print("Możesz skorzystać z 5 szans i spytać mnie, czy dana litera zawiera się w słowie.")
print("\nPodpowiem tylko, że słowo ma następującą ilość liter: ", len(correct))
choice1 = input("\nSpróbujesz odgadnąć słowo już teraz? tak/nie ")
while choice1 == "nie" and tries<5:
litera = input("\nWpisz literę, a ja odpowiem, czy zawiera się ona w tym słowie: ")
if litera in correct:
print("\nTak, litera", litera, "znajduje się w tym słowie.")
else:
print("\nNie, litera", litera, "nie znajduje się w tym słowie.")
choice2 = input("\nCzy chcesz spytać o kolejną literę?")
if choice2 == "tak" and tries <5:
tries += 1
else:
break
if tries > 4:
input("\nPrzykro mi, wykorzystałeś(aś) już wszystkie 5 prób podpowiedzi. Musisz odpowiedzieć. Co to za słowo? ")
answer = input("\nA więc co to za słowo? ")
if answer == correct:
print("\n\nGratulacje! Udało Ci się odpowiedzieć po", tries, "podpowiedziach!")
print("\n\nTo nie to słowo. Poprawne słowo to:", correct)
print("\nKoniec gry!")