Naszym zdaniem jest napisać program, grający z użytkownikiem w rzut monetą.

Działanie programu powinno być zbliżone do następującego:

  1. Użytkownik wybiera czy obstawia resztę, czy orła (literka r – reszka, literka o – orzeł)
  2. Po dokonaniu wybory, Komputer odlicza 3,2,1, a następnie dokonuje ‚rzutu’, czyli losowego wyboru orzeł / reszka.
  3. Komputer wyświetla wynik rzutu.
  4. Jeżeli wygrał użytkownik, to dodaje punkt dla użytkownika, jeżeli komputer to dodaje punkt dla komputera.
  5. Wyświetla wyniki
  6. Wracamy do punktu 1.

Wskazówki

  • Działanie programu powinno kończyć się po podaniu w punkcie 1, cyfry 0.
  • Wczytanie wyboru użytkownika, może odbyć się przy pomocy funkcji input(), która zwraca podany przez użytkownika ciąg znaków
x = input()
  • Odliczamy 3,2,1 za pomocą pętli for, natomiast pomiędzy liczbami, możemy wprowadzić opóźnienia, za pomocą biblioteki time
import time
time.sleep(1)
  • Losowy wybór reszka / orzeł, może odbyć się przy użyciu funkcji random, tak jak poniżej
import random
random.choice(["orzeł", "reszka"])

Rozwiązanie:

# importujemy potrzebne biblioteki

import random
import time

# ustawiamy początkowy wynik dla użytkownika oraz komputera
user = 0
computer = 0 

while True:
    
    # wczytujemy wybór uzytkownika
    x = input()
    if x == '0': break
    elif x == 'o': x = "orzeł"
    elif x == 'r': x = "reszka"
    else:
        print("Proszę dokonać prawidłowego wyboru:")
        print("o - orzeł")
        print("r - reszka")
        print("0 - zakończenie gry")
        
        # jezeli użytkownik nie wybrał ani, o, r, 0, to wróć do początku wykonywania pętli 
        continue
    
    # rzucamy monetą
    y = random.choice(["orzeł", "reszka"])
   
    # Odliczamy 3,2,1
    for i in range (0,3):
        print (3-i)
        time.sleep(1)
        
    print ("Wynik rzutu: ", y)
    
    # sprawdzamy kto wygrał
    if x == y: 
        user+=1
    else:
        computer+=1
        
    # Drukujemy podsumowanie
    print ("Wyniki łacznie.")
    print ("Użytkownik: ", user)
    print ("Komputer: ", computer)
    

Ćwiczenia Python, dla początkujących

  1. Wstęp do kursu
  2. FizzBuzz
  3. Najmniejsza i największa liczba
  4. Zliczanie liter
  5. Sortowanie bąbelkowe
  6. Suma dwóch liczb
  7. Wyszukiwanie binarne
  8. Gra w orła i reszkę <– bieżąca lekcja
  9. Podsumowanie oraz dalsze kroki