Odgadniecie cyfry z ciagu cyfr

0

Witam,

Napisałem sobie program w ktorym uzytkownik musi odgadnac 4 elementowa liczbe wylosowana przez komputer. Klasycznie gdy cyfra jest za mala to program informuje, ze ze cyfra jest za niska i prosi o ponowne podanie liczby itd. Chcialbym jednak sprobowac to zrobic inaczej i zalozmy, ze komputer generuje liczbe 1234 a uzytkownik podczas proby podaje liczbe 1000 i chcialbym zmienic program tak aby informowal uzytkownika, ze jedna cyfra z 4elementowego ciagu cyfr jest prawidlowa a pozostale zle. Prosilbym o jakies naprowadzenie w jakis sposob pokombinowac aby uzyskac taki efekt.

Z gory dziekuje i pozdrawiam

1

Możesz rzucić liczbę na stringa i wtedy porównywać kolejne "litery, albo użyć modulo żeby wyciągnąć tylko ostatnią cyfrę. Do wyciągnięcia przedostatniej podziel przez 10 (floor divison, czyli użyj // zamiast /) i potem modulo 10. Do trzeciej od końca podziel przez 100 i znowu modulo 10 itd.

1
liczba_wylosowana_przez_pc = 1234
liczba_gracza = 1000

podpowiedz = filter(lambda gracz: gracz in str(liczba_wylosowana_przez_pc), str(liczba_gracza))
print(set(podpowiedz))
>> {'1'}

ew krocej

common = set(list(str(liczba_wylosowana_przez_pc)))&set(list(str(liczba_gracza)))
>> {'1'}

1 użytkowników online, w tym zalogowanych: 0, gości: 1