drakon-firestone

Gotowe

Sep 17th, 2021
643
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Threading;
  3.  
  4. class Program
  5. {
  6.     static void Main(string[] args)
  7.     {
  8.         // Punkt 1
  9.         // zmienne mówiące ile oczek wyrzucił gracz i przeciwnik w każdej rundzie
  10.         int wyrzuconeOczkaGracza = 0;
  11.         int wyrzuconeOczkaPrzeciwnika = 0;
  12.  
  13.         // Punkt 1.1
  14.         // zmienne mówiące o ilości wygranych gracza i przeciwnika
  15.         int wygraneGracza = 0;
  16.         int wygraneKomputera = 0;
  17.  
  18.         // Punkt 1.2
  19.         // ilość rund potrzebna jest do określenia po ilu turach następuje koniec gry
  20.         int runda = 0;
  21.  
  22.         // Punkt 1.3
  23.         // Wypisujemy na konsoli informację o rozpoczęciu gry
  24.         Console.WriteLine("Cześć, może szybka partyjka w kości?");
  25.         Console.WriteLine("Wciśnij dowolny klawisz, aby rozpocząć...");
  26.  
  27.         // Punkt 1.4
  28.         // ReadKey wstrzymuje działąnie programu do momentu naciśnięcia klawisza
  29.         Console.ReadKey();
  30.  
  31.         do
  32.         {
  33.             // Punkt 2
  34.             // W każdym kolejnym wykonaniu pętli tzw. iteracji zwiększamy zmienną runda o 1
  35.             runda++;
  36.  
  37.             Console.WriteLine($"Runda {runda}");
  38.             Console.WriteLine($"Twój rzut");
  39.             Console.ReadKey();
  40.             Console.Clear();
  41.  
  42.             wyrzuconeOczkaGracza = RzutKośćmi();
  43.             Console.WriteLine($"Twój wynik to: {wyrzuconeOczkaGracza}");
  44.             Console.ReadKey();
  45.             Console.Clear();
  46.  
  47.             Console.WriteLine($"Runda {runda}");
  48.             Console.WriteLine($"Moja kolej :)");
  49.             Console.ReadKey();
  50.             Console.Clear();
  51.  
  52.             wyrzuconeOczkaPrzeciwnika = RzutKośćmi();
  53.  
  54.             Console.WriteLine($"Mój wynik: {wyrzuconeOczkaPrzeciwnika}");
  55.             Console.ReadKey();
  56.             Console.Clear();
  57.  
  58.             Console.WriteLine($"Zobaczmy kto wygrał tę rundę....");
  59.             Console.ReadKey();
  60.             Console.Clear();
  61.  
  62.             // Punkt 3
  63.             // Sprawdzamy kto wygrał daną rundę i na tej podstawie wyświetlamy odpowiedni komunikat i aktualizujemy punkty
  64.             // Najpierw sprawdzamy, czy gracz wygrał
  65.             if(wyrzuconeOczkaGracza > wyrzuconeOczkaPrzeciwnika)
  66.             {
  67.                 Console.WriteLine("Niech to! Tę rundę wygrałeś/aś!");
  68.                 wygraneGracza++;
  69.             }
  70.  
  71.             // Punkt 3.1
  72.             // kolej na sprawdzenie czy komputer wygrał
  73.             else if(wyrzuconeOczkaPrzeciwnika > wyrzuconeOczkaGracza)
  74.             {
  75.                 Console.WriteLine("Hahaha! Ta runda należy do mnie!");
  76.                 wygraneKomputera++;
  77.             }
  78.  
  79.             // Punkt 3.2
  80.             // Jeśli nikt nie wygrał, to mamy remis
  81.             else
  82.             {
  83.                 Console.WriteLine("Ale jak to remis? :(");
  84.             }
  85.  
  86.             Console.WriteLine($"Sprawdźmy wynik: Ty - {wygraneGracza} : {wygraneKomputera} - Ja");
  87.             Console.ReadKey();
  88.             Console.Clear();
  89.  
  90.             // Pierwszy if sprawdza, czy skończyliśmy już ostatnią rundę
  91.             if (runda == 5)
  92.             {
  93.                 // Najpierw sprawdzamy, czy gracz wygrał
  94.                 if (wygraneGracza > wygraneKomputera)
  95.                 {
  96.                     Console.WriteLine("Gratulacje, wygrałeś!");
  97.                 }
  98.                 // kolej na sprawdzenie czy komputer wygrał
  99.                 else if (wygraneGracza < wygraneKomputera)
  100.                 {
  101.                     Console.WriteLine("Niestety, przegrałeś!");
  102.                 }
  103.                 // Jeśli nikt nie wygrał, to mamy remis
  104.                 else
  105.                 {
  106.                     Console.WriteLine("Mamy Remis!");
  107.                 }
  108.                 Console.ReadKey();
  109.             }      
  110.  
  111.         } while (runda < 5);
  112.     }
  113.  
  114.     // metoda do losowania ilości punktów w jednym rzucie
  115.     // to kawałek kodu wspólny dla gracza i przeciwnika, więc zamiast //pisać 2 razy tworzymy metodę
  116.     static int RzutKośćmi()
  117.     {
  118.         // klasa Random, jest to generator liczb pseudolosowych
  119.         // wylosowanie liczby jest oparte o czas systemowy
  120.         Random random = new Random();
  121.        
  122.         // tworzymy zmienną pomocniczą, do przechowania wyniku
  123.         // metoda Next przyjmuje minimalną  i maksymalną granicę przedziału losowania,
  124.         // przy czym maksymalna wartosc nie jest brana pod uwagę
  125.         // rzucamy 3 kośćmi, stąd min = 3, max = 19
  126.         int wylosowanePunkty = random.Next(3, 19);
  127.         return wylosowanePunkty;
  128.     }
  129. }
RAW Paste Data