Back to Top

Lekcja 2 - Operatory

Instrukcje

Pierwsza lekcja pokazała nam, jak deklarować zmienne i przypisywać do nich dane (czyli jak przygotować pojemniki i włożyć do nich składniki). Teraz nauczymy się pisać instrukcje, które na tych składnikach będą działać.

Operatory

Operatory pozwalają wykonywać na zmiennych różne operacje. Większość operatorów jest dwuargumentowa, tzn. wymaga dwóch argumentów – zmiennych lub danych, na których będą działać.

Operatory mogą działać tylko na zmiennych tego samego typu. Nie możemy podzielić liczby przez tekst – taki fragment kodu będzie błędny.

int result = 2 / "Ala";

Operator Przypisania

Poznaliśmy jeden operator – operator przypisania, który przypisuje prawy argument do lewego. Prawym argumentem może być zmienna lub dane wpisane na sztywne, lewym –tylko zmienna. Operator przypisania używa znaku równości, ale nie ma nic wspólnego z porównywaniem danych.

int x = 0;
int y = 10;

Operatory Arytmetyczne

Kolejną grupą operatorów są operatory arytmetyczne. Działają one na dwóch argumentach i zwracają wynik, którym możemy uzupełnić zmienną. C# posiada następujące operatory arytmetyczne:

  • Operator Dodawania: +

  • Operator Odejmowania: -

  • Operator Mnożenia: *

  • Operator Dzielenia: /

  • Operator Modulo: %

Większość operatorów jest zrozumiała, gdyż ich zastosowanie nie różni się od tego w matematyce.

int result = 2 + 2;

Identyczna jak w matematyce jest również kolejność ich stosowania. W tym przypadku najpierw zostanie wykonane mnożenie, a następnie dodawanie.

int result = 2 * 2 + 10;

Operator Modulo

Operator modulo zwraca wynik reszty z dzielenia. Na przykład 11 % 5 zwróci 1, ponieważ 11 / 5 = 2 i zostaje 1 reszty.

int result = 11 % 5;

Operator Konkatenacji

Operator konkatenacji to operator pozwalający łączyć dwie zmienne lub dwie dane typu tekstowego. Używa on znaku +, ale nie ma nic wspólnego z dodawaniem.

string fullName = "John" + " " + "Rambo";

W powyższym przykładzie połączyliśmy trzy ciągi znaków: John, znak spacji, Rambo. Wynik połączenia został przypisany do obiektu fullName.

Operatory Logiczne

Operatory logiczne zwracają prawdę lub fałsz, czyli true lub false. Jest to pierwszy poznany operator, którego argumenty są innego typu niż zwracana wartość. Operatory logiczne przypisujemy do zmiennych typu bool.

C# posiada następujące operatory logiczne.

Znak Opis Przykład Wynik Przykładu
== znak równości 2 == 5 False
!= znak nierówności 2 !=5 True
> większe niż 1 > 6 False
< mniejsze niż 1 < 6 True
>= większe lub równe niż 2 <= 3 True
<= mniejsze lub równe niż 2 <= 2 True
&& logiczne "i" (2 == 2) && (3 > 2) False
|| logiczne "lub" (2 == 2) || (3 > 2) True
! zaprzeczenie !(2 == 3) True

 

bool isEqual = (2 == 3);

Powyższy przykład sprawdza, czy 2 jest równe 3. Zwróć uwagę, że do porównywania dwóch liczb wykorzystujemy podwójny znak równości. Wynik porównania jest przypisywany do zmiennej isEqual. Nawiasy nie są wymagane –zostały wstawione jedynie, aby zwiększyć czytelność.

int x = 5;
int y = x * 5;
bool isGreater = x > y – 30;

Kolejny fragment jest trochę bardziej skomplikowany. Utworzyliśmy zmienną o nazwie x z wartością 5. Następnie zmienną o nazwie y z wartością, która jest wynikiem mnożenia zmiennej x i liczby 5. Na koniec sprawdzamy, czy x jest większe od y pomnożonego razy 30.

Zadanie 1

W zadaniu mamy zadeklarowaną zmienną o nazwie netPrice. Zmienna przechowuje cenę produktu. Cena jest podana w kwocie netto.

Utwórz kolejną zmienną typu double o nazwie vat. Do zmiennej przypisz kwotę podatku vat, jaką trzeba będzie doliczyć do ceny produktu, przechowywanej w zmiennej netPrice.

Utwórz kolejną zmienną typu double o nazwie grossPrice. Do zmiennej przypisz ceną produktu dodając kwotę netto oraz podatek vat, znajdujące się w poprzednich zmiennych.

Pamiętaj, aby korzystać ze zmiennych zmiennoprzecinkowych, ponieważ wykonywane operacje wymagają podania liczby ułamkowej.

Wartości wszystkich zmiennych wyświetl w konsoli za pomocą funkcji Console.WriteLine.

Zadanie 1

Rozwiązanie zadania 1

Zadanie 2

W zadaniu znajdują się dwie zmienne typu int o nazwach x i y. Zmienne posiadają zdefiniowaną wartość.

Utwórz kilka zmiennych typu bool i przypisz do nich wyniki następujących instrukcji.

  • zmienna o nazwie isXGreater – sprawdź, czy x jest większe od y.

  • zmienna o nazwie isYGreater – sprawdź, czy y jest większe od x.

  • zmienna o nazwie isEqual – sprawdź, czy zmienne x i y są równe.

Wartości wszystkich zmiennych wyświetl w konsoli za pomocą funkcji Console.WriteLine.

Możesz również spróbować zmienić wartości początkowe i sprawdzić wartości zmiennych.

Zadanie 2

Rozwiązanie zadania 2

Zadanie 3

Zadeklaruj zmienną typu int o nazwie numer i przypisz do niej dowolną wartość. Utwórz kolejną zmienną typu bool o nazwie result i przypisz do niej wynik działania, który sprawdza, czy zmienna number jest parzysta, czy nie.

Jaka instrukcja sprawdza parzystość liczby? Wystarczy uzyskać resztę z dzielenia przez 2 i porównać ją z liczbą 0. Jeśli reszta z dzielenia przez 2 równa się 0, liczba jest parzysta, w przeciwnym przypadku –nieparzysta.

Na koniec wyświetl zmienną result w konsoli.

Zadanie 3

Rozwiązanie zadania 3