drakon-firestone

Untitled

Sep 17th, 2021
732
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.  
  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.  
  66.  
  67.             // Punkt 3.1
  68.             // kolej na sprawdzenie czy komputer wygrał
  69.  
  70.  
  71.             // Punkt 3.2
  72.             // Jeśli nikt nie wygrał, to mamy remis
  73.  
  74.  
  75.             Console.WriteLine($"Sprawdźmy wynik: Ty - {wygraneGracza} : {wygraneKomputera} - Ja");
  76.             Console.ReadKey();
  77.             Console.Clear();
  78.  
  79.             // Pierwszy if sprawdza, czy skończyliśmy już ostatnią rundę
  80.             if (runda == 5)
  81.             {
  82.                 // Najpierw sprawdzamy, czy gracz wygrał
  83.                 if (wygraneGracza > wygraneKomputera)
  84.                 {
  85.                     Console.WriteLine("Gratulacje, wygrałeś!");
  86.                 }
  87.                 // kolej na sprawdzenie czy komputer wygrał
  88.                 else if (wygraneGracza < wygraneKomputera)
  89.                 {
  90.                     Console.WriteLine("Niestety, przegrałeś!");
  91.                 }
  92.                 // Jeśli nikt nie wygrał, to mamy remis
  93.                 else
  94.                 {
  95.                     Console.WriteLine("Mamy Remis!");
  96.                 }
  97.                 Console.ReadKey();
  98.             }      
  99.  
  100.         } while (runda < 5);
  101.     }
  102.  
  103.     // metoda do losowania ilości punktów w jednym rzucie
  104.     // to kawałek kodu wspólny dla gracza i przeciwnika, więc zamiast //pisać 2 razy tworzymy metodę
  105.     static int RzutKośćmi()
  106.     {
  107.         // klasa Random, jest to generator liczb pseudolosowych
  108.         // wylosowanie liczby jest oparte o czas systemowy
  109.         Random random = new Random();
  110.        
  111.         // tworzymy zmienną pomocniczą, do przechowania wyniku
  112.         // metoda Next przyjmuje minimalną  i maksymalną granicę przedziału losowania,
  113.         // przy czym maksymalna wartosc nie jest brana pod uwagę
  114.         // rzucamy 3 kośćmi, stąd min = 3, max = 19
  115.         int wylosowanePunkty = random.Next(3, 19);
  116.         return wylosowanePunkty;
  117.     }
  118. }
RAW Paste Data