Gra "Zgadnij liczbę" — tutorial (C#)

Cel: zrobić prostą grę konsolową, uczącą losowania liczb, pętli while, obsługi wejścia i liczenia prób.

Wymagania

Plan

  1. Utwórz projekt: dotnet new console -n GuessNumber lub przygotuj plik Program.cs.
  2. Wklej przykładowy kod poniżej.
  3. Uruchom: dotnet run i graj.

Przykładowy kod (Program.cs)

Skopiuj do Program.cs.

// Program.cs
using System;

class Program
{
    static void Main()
    {
        var rnd = new Random();
        Console.WriteLine("Gra: Zgadnij liczbę (1-100). Wpisz 'q' lub 'exit' by wyjść.");
        int target = rnd.Next(1, 101);
        int attempts = 0;

        while (true)
        {
            Console.Write("Podaj swoją zgadywaną liczbę: ");
            var line = Console.ReadLine();
            if (line == null) break;

            var cmd = line.Trim().ToLower();
            if (cmd == "q" || cmd == "exit")
            {
                Console.WriteLine("Wyjście z gry. Do zobaczenia!");
                break;
            }

            if (!int.TryParse(cmd, out int guess))
            {
                Console.WriteLine("Proszę wpisać poprawną liczbę całkowitą.");
                continue;
            }

            attempts++;

            if (guess < target)
            {
                Console.WriteLine("Za mało!");
            }
            else if (guess > target)
            {
                Console.WriteLine("Za dużo!");
            }
            else
            {
                Console.WriteLine($"Brawo! Zgadłeś w {attempts} próbach.");
                break;
            }
        }

        Console.WriteLine("Koniec gry.");
    }
}

Uruchomienie

dotnet new console -n GuessNumber
cd GuessNumber
// zamień zawartość Program.cs na powyższy kod
dotnet run
Zadanie 1:

Dodaj poziomy trudności (np. łatwy 1-50, normalny 1-100, trudny 1-1000) i umożliw wybór przed startem gry.

Zadanie 2:

Wprowadź limit prób (np. 10 prób) — wyświetl komunikat przegranej, jeśli limit się wyczerpie.

Zadanie 3:

Zaimplementuj możliwość powtórzenia gry bez restartu programu (pętla gry + reset celu i licznika prób).

Zadanie 4:

Zapisuj najlepszy wynik (najmniejsza liczba prób) do pliku tekstowego i pokaż go przy starcie gry.

Wskazówki

Powrót do listy tutoriali