Dataczwartek, 13 sierpnia 2026 Czas19:07:29
← Programowanie konsolowe (C#)

Lekcja 4. Operatory w C#

Podstawowy

Po co się tego uczymy?

Bez operatorów program może co najwyżej wypisać stały tekst — operatory to narzędzie, dzięki któremu program faktycznie coś OBLICZA i PORÓWNUJE, co jest fundamentem każdej decyzji podejmowanej w kodzie (Lekcja 6).

Teoria

Operator to symbol nakazujący programowi wykonanie konkretnej operacji na wartościach (tzw. operandach) — dodawania, porównania, przypisania. Znasz je już z matematyki, C# dodaje do nich kilka własnych.

Operatory arytmetyczne (do liczenia): + dodawanie, - odejmowanie, * mnożenie, / dzielenie, % reszta z dzielenia (modulo — bardzo przydatne, np. do sprawdzania parzystości liczby).

Operatory przypisania: = przypisuje wartość, a skrócone warianty +=, -=, *=, /= łączą operację arytmetyczną z przypisaniem w jednym kroku (x += 5; to skrót od x = x + 5;).

Operatory inkrementacji/dekrementacji: ++ zwiększa wartość o 1, -- zmniejsza o 1 — najczęściej spotykane w pętlach (Lekcja 7).

Operatory porównania (zwracają true/false): == równe, != różne, >, <, >=, <=. Uwaga: pojedynczy znak = to PRZYPISANIE, a podwójny == to PORÓWNANIE — to jedna z najczęstszych pomyłek początkujących.

Operatory logiczne (łączą warunki): && (i — oba warunki muszą być prawdziwe), || (lub — wystarczy jeden), ! (zaprzeczenie, odwraca true na false i odwrotnie).

Przykład z życia

Operator modulo (%) używany jest wszędzie tam, gdzie trzeba sprawdzić "co N-ty element" — np. co 5. klient dostaje rabat, albo czy numer wiersza jest parzysty (do naprzemiennego kolorowania tabeli).

Kod (C#)

using System;

class Program
{
    static void Main()
    {
        int punkty = 10;
        punkty += 5; // skrót od: punkty = punkty + 5;
        Console.WriteLine("Punkty: " + punkty); // 15

        int liczba = 7;
        bool jestParzysta = (liczba % 2 == );
        Console.WriteLine("Czy parzysta? " + jestParzysta); // False

        int wiek = 20;
        bool maPrawoJazdy = true;
        bool mozeWypozyczycAuto = (wiek >= 18) && maPrawoJazdy;
        Console.WriteLine("Może wypożyczyć auto? " + mozeWypozyczycAuto); // True
    }
}

Komentarz i wyjaśnienie kodu

liczba % 2 == 0 sprawdza resztę z dzielenia przez 2 — jeśli wynosi 0, liczba jest parzysta. Nawiasy wokół (wiek >= 18) && maPrawoJazdy nie są konieczne składniowo, ale znacząco poprawiają czytelność złożonych warunków logicznych.

Ćwiczenie samodzielne

Napisz program obliczający resztę z dzielenia dwóch wpisanych na sztywno liczb i sprawdzający, czy wynik jest równy zero.

Plac zabaw — wypróbuj online

Poniższy kod wykonuje się od razu w Twojej przeglądarce — nic nie trzeba instalować. Zmień kod i kliknij „Uruchom”.

CSHARP

Zadania do pracy własnej

  1. Napisz program obliczający pole i obwód prostokąta o zadanych bokach.

  2. Napisz program sprawdzający dwoma operatorami logicznymi, czy podana (na sztywno) ocena mieści się w zakresie 1-6 ORAZ jest liczbą całkowitą dodatnią.

  3. Napisz kalkulator ceny biletu do kina: cena bazowa 20 zł, zniżka 50% dla wieku poniżej 12 lat LUB powyżej 65 lat, dodatkowa zniżka 20% dla studentów (łączona z pozostałymi zniżkami) — użyj operatorów arytmetycznych, porównania i logicznych razem.

Typowe błędy

Najczęstszy błąd to pomylenie = (przypisanie) z == (porównanie) — if (x = 5) w C# jest błędem kompilacji przy typie bool (inaczej niż w niektórych innych językach), więc kompilator Cię ostrzeże, ale warto zapamiętać różnicę od razu. Drugi błąd: dzielenie dwóch liczb całkowitych (int) i oczekiwanie wyniku z częścią dziesiętną — 7 / 2 w C# da 3 (dzielenie całkowitoliczbowe), a nie 3.5, chyba że przynajmniej jedna z liczb jest typu double.

Nawiązanie do egzaminu zawodowego

To realizacja efektu INF.04.4.4 z podstawy programowej: "stosuje wyrażenia, instrukcje i biblioteki" — konkretnie kryterium dotyczące operatorów arytmetycznych, przypisania, porównania i logicznych oraz priorytetów ich wykonywania.