Algorytm. Gra Papier Kamień Nożyce

Grę „Papier Kamień Nożyce” znają chyba wszyscy. Tym razem naszym zadaniem jest stworzenie algorytmu wskazującego zwycięzcę tej gry.

Zakładamy, że w grze uczestniczą dwaj gracze. Każdy z graczy może wybrać (pokazać) jedną z trzech wartości: papier albo kamień albo nożyce. Możemy więc przystąpić do tworzenia specyfikacji algorytmu:


Dane wejściowe:
g1: pierwszy gracz – ciąg znaków zawierający jedną z wartości: {papier, kamień, nożyce}
g2: drugi gracz – ciąg znaków zawierający jedną z wartości: {papier, kamień, nożyce}

Naszym zadaniem jest wskazanie zwycięzcy. Jak może zakończyć się starcie? Mamy trzy możliwości:albo wygrał gracz pierwszy albo gracz drugi albo też gracze pokazali tą samą rzecz i gra zakończyła się remisem. Zatem możemy zdefiniować:

Dane wyjściowe (wynik):
wynik: wynik gry – napis (ciąg znaków) zawierający jedną z wartości {„Wygrał gracz 1”, „Wygrał gracz 2″,”Remis”}

 Metoda wskazania zwycięzcy

Ciąg dalszy już niedługo …

Algorytm przedstawiony w języku programowania

Przykładowy fragment kodu programu w języku C#:

 if (p1 == p2)
      return „Remis!”;

    if (((p1 == „kamień”) && (p2 == „nożyce”)) ||
        ((p1 == „nożyce”) && (p2 == „papier”)) ||
        ((p1 == „papier”) && (p2 == „kamień”)))
    {
      return „Wygrał gracz 1!”;
    }
    else
    {
      return „Wygrał gracz 2!”;
    }

Dodaj komentarz

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