Cześć wszystkim uczę się cały czas i wstyd mi trochę zamieszczać takiego chochoła, a właściwie, to kilka jego wersji : )
No nic, ale liczę na Waszą wyrozumiałość i, że uzyskam pomoc.
Mam za zadanie utworzyć prostą gierkę, a w zasadzie tylko zmodyfikować jej kod:
Oryginalny kod wygląda następująco:
import random
# utwórz sekwencję słów do wyboru
WORDS = ("python", "anagram", "łatwy", "skomplikowany", "odpowiedź", "ksylofon")
# wybierz losowo jedno słowo z sekwencji
word = random.choice(WORDS)
# utwórz zmienną, by później użyć jej do sprawdzenia, czy odpowiedź jest poprawna
correct = word
# utwórz 'pomieszaną' wersję słowa
jumble =""
while word:
position = random.randrange(len(word))
jumble += word[position]
word = word[:position] + word[(position + 1):]
# rozpocznij grę
print(
"""
Witaj w grze 'Wymieszane litery'!
Uporządkuj litery, aby odtworzyć prawidłowe słowo.
(Aby zakończyć zgadywanie, naciśnij klawisz Enter bez podawania odpowiedzi.)
"""
)
print("Zgadnij, jakie to słowo:", jumble)
guess = input("\nTwoja odpowiedź: ")
while guess != correct and guess != "":
print("Niestety, to nie to słowo.")
guess = input("Twoja odpowiedź: ")
if guess == correct:
print("Zgadza się! Zgadłeś!\n")
print("Dziękuję za udział w grze.")
input("\n\nAby zakończyć program, naciśnij klawisz Enter.")
No i jak wiadomo , ta gierka wyświetla anagramy , a po modyfikacji kodu ma wyświetlać podpowiedzi jeżeli użytkownik utknie w "martwym punkcie"
Moja pierwsza wersja po zmianie:
ODPOWIEDŹ1 = T
ODPOWIEDŹ1 = N
podpowiedź1= "wąż lub język programowania"
podpowiedź2= "przeciwieństwo trudnego"
podpowiedź3 = "przeciwieństwo łatwego "
podpowiedź4 = "instrument muzyczny"
podpowiedź5 ="słowo powstałe w wyniku przestawienia liter"
def sprawdź():
if word in WORDS == 'python:':
print(podpowiedź1)
elif word in WORDS == 'łatwy':
print(podpowiedź2)
elif word in WORDS == 'anagram':
print(podpowiedź5)
elif word in WORDS == 'skomplikowany':
print(podpowiedź3)
elif word in WORDS == 'ksylofon':
print(podpowiedź4)
> Tu zdefiniowałem fragment kodu , który powinien zadziałać moim zdaniem w następujący sposób:
> 1. Sprawdzić , czy losowe słowo jest tym wylosowanym anagramem przez komputer i następnie
> ten fragment kodu zaimplementowałem w głównej pętli while gdzie miał on sprawdzić czy wylosowane słowo
> jest równe słowu przypisanemu , a następnie powinien kod zwrócić podpowiedź , jeżeli użytkownik wpisze T
> nie wiem jak dla mnie laika jest , to logiczne i powinno zadziałać ale nic z tego
guess = input("\nTwoja odpowiedź: ")
while guess != correct and guess !="":
print("Niestety, to nie to słowo.")
print('Czy podrzebujesz podpowiedziw, jeżeli tak wprowadź T')
zmienna1 = input("\nTwoja odpowiedź: ")
zmienna1 ODPOWIEDŹ1
sprawdź()
input('Wprowadź znak aby "wyjść" z pętli') - ten wiersz kodu wstawiłem opcjonalnie
else:
guess == ODPOWIEDŹ2
print('gratulacje zdecydowałeś się odgadnąć zagadkę bez pomocy')
guess = input("\nTwoja odpowiedź: ")
#if guess != correct:
#guess = input("\nTwoja odpowiedź: ")
if guess == correct :
print("Zgadza się! Zgadłeś!\n")
print("Dziękuję za udział w grze.")
input("\n\nAby zakończyć program, naciśnij klawisz Enter.")
Kolejnym moim pomysłem było aby opcja def sprawdź ():
wyglądała w sposób następujący:
#if word == 'python' and guess == '':
#print(podpowiedź1)
#elif word == 'anagram' and guess == '':
#print(podpowiedź5)
#elif word == 'łatwy' and guess == '':
#print(podpowiedź2)
#elif word == 'skąplikowany' and guess == '':
#print(podpowiedź3)
#elif word == 'ksylofon' and guess == '':
# print(podpowiedź4)
Następny pomysł , to aby w kodzie znalazła się taka opcja
podpowiedź1=1
podpowiedź2=2
podpowiedź3 =3
podpowiedź4 =4
podpowiedź5 =5
podpowiedź1= "wąż lub język programowania"
podpowiedź2= "przeciwieństwo skąplikowanego"
podpowiedź3 = "przeciwieństwo łatwego "
podpowiedź4 = "instrument muzyczny"
podpowiedź5 ="słowo powstałe w wyniku przestawienia liter"
podpowiedź = podpowiedź1 ,podpowiedź2, podpowiedź3, podpowiedź4 , podpowiedź5
podpowiedź = random.randint(1,5)
Ten fragment kodu losowałby podpowiedzi
a następnie sprawdzałby , czy wylosowana podpowiedź jest odpowiednia , to wylosowanego anagramu ale nie wiem nic mi nie działa więc proszę o podpowiedź