R1zBjRDHKkAtJ
Obraz zawiera poukładanie klocki z nadrukowanymi liczbami. Grafika dekoracyjna.

Programowanie obliczeń w języku Python

Źródło: Susan Holt Simpson, dostępny w internecie: unsplash.com [dostęp 2.04.2024], domena publiczna.

Wykorzystanie operatorów do budowania wyrażeń

Rozwiązując różne problemy algorytmiczne, bardzo często musimy w programach wykonywać obliczenie. W tym celu budujemy wyrażenia, w  których wykorzystujemy różnego typu operatory. W programowaniu mówimy przede wszystkim o wyrażeniach matematycznych, które służą obliczeniom (jak dodawanie czy mnożenie) oraz logicznych, które zwracają wartość Prawda/Fałsz. Musimy również pamiętać o priorytecie operatorów.

Priorytet operatorów określa, jak należy interpretować wyrażenia w języku Python. Wyrażenie przetwarzane jest od lewej do prawej strony (oprócz potęgowania, które grupowane jest od prawej do lewej), z zachowaniem reguł matematyki, a więc w kolejności: nawiasy, potęgowanie, pierwiastkowanie, mnożenie, dzielenie itd.

Przykłady operatorów arytmetycznych:

Przykład

Opis

x + y

dodawanie

x - y

odejmowanie

x * y

mnożenie

x / y

dzielenie rzeczywiste

x // y

dzielenie całkowite

x % y

reszta z dzielenia całkowitego (operacja modulo)

x ** y

potęgowanie

Przykłady operatorów relacji:

Przykład

Opis

x < y, x > y

operatory porównania mniejszy/większy

x <= y, x >= y

operatory porównania mniejszy/większy lub równy

x == y, x != y

operatory równości i nierówności zawartości

x in y, x not in y

przynależność obiektów

Przykład

Opis

operatory porównania

x < y

mniejszy

x > y

większy

x <= y

mniejszy lub równy

x >= y

większy lub równy

operatory równości i nierówności zawartości

x == y

operator równości zawartości

operator nierówności zawartości

przynależność obiektów

x in y

x należy do y

x not in y

x nie należy do y

Ważne!

W języku Python wszystkie operatory porównań mają taki sam priorytet, który jest niższy od priorytetu wszystkich operacji arytmetycznych.

Przykłady operatorów logicznych:

Przykład

Opis

x or y

logiczne OR

and y

logiczne AND

not x

logiczna negacja

kolejność działań bez nawiasów
Reguła: kolejność działań bez nawiasów

Wyrażenia bez nawiasów wykonywane są według priorytetów operatorów – np. wyrażenie
Q ** 4 + 3 * 5 / 3 - 1
możemy zapisać w następujący sposób:
((Q ** 4) + (3 * 5/3)) - 1.

kolejność działań z nawiasami
Reguła: kolejność działań z nawiasami

Nawiasy zmieniają kolejność wykonywania działań - np. wyrażenie
(Q ** 4 + 3 * 5/(3 - 1))
zostanie uproszczone do postaci
(Q ** 4 + 7,5),
ponieważ
(3 - 1)
zapisane jest w nawiasie, a zatem zostanie obliczone przed wykonaniem dzielenia.

Oto przykład w środowisku IDLE:

Linia 1. Python 3 kropka 6 kropka 7 otwórz nawias okrągły default przecinek Oct 22 2018 przecinek 11 dwukropek 32 dwukropek 17 zamknij nawias okrągły. Linia 2. otwórz nawias kwadratowy GCC 8 kropka 2 kropka 0 zamknij nawias kwadratowy on linux. Linia 3. Type cudzysłów help cudzysłów przecinek cudzysłów copyright cudzysłów przecinek cudzysłów credits cudzysłów or cudzysłów license otwórz nawias okrągły zamknij nawias okrągły cudzysłów for more information kropka. Linia 4. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny Q znak równości 3. Linia 5. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny Q asterysk asterysk 4 plus 3 asterysk 5 prawy ukośnik 3 minus 1. Linia 6. 85 kropka 0. Linia 7. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny kratka teraz wyrażenie z użyciem nawiasów. Linia 8. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny Q asterysk asterysk 4 plus 3 asterysk 5 prawy ukośnik otwórz nawias okrągły 3 minus 1 zamknij nawias okrągły. Linia 9. 88 kropka 5. Linia 10. zamknij nawias ostrokątny zamknij nawias ostrokątny zamknij nawias ostrokątny.
Polecenie 1

Napisz prosty kalkulator. Do zmiennych ab przypisz wartości całkowite, a następnie wykonaj kolejno działania:

  • dodawania,

  • odejmowania,

  • mnożenia,

  • dzielenia,

  • dzielenia z resztą.

Działanie swojego programu przetestuj dla wartości a równej 4 oraz b równej 5.

Specyfikacja problemu:

Dane:

  • a – liczba całkowita

  • b – liczba całkowita różna od 0

Wynik:

Program wypisuje w kolejnych wierszach działania (wraz z wynikami) w takiej kolejności, jak podano w poleceniu.

Przykładowe wyjście:

Linia 1. a plus b. Linia 2. 9. Linia 3. a minus b. Linia 4. minus 1. Linia 5. a asterysk b. Linia 6. 20. Linia 7. a prawy ukośnik b. Linia 9. a procent b. Linia 10. 4.
RlAVz5YryTKNS
Wymyśl pytanie na kartkówkę związane z tematem materiału.
Polecenie 2

Latami przestępnymi nazywamy te, których numeracja:

  • jest podzielna przez 4 oraz jest niepodzielna przez 100 lub:

  • jest podzielna przez 400.

Napisz program sprawdzający, czy dany rok jest przestępny.

Specyfikacja problemu:

Dane:

  • rok – dodatnia liczba naturalna przechowująca badany rok

Wynik:

Jeśli badany rok jest przestępny, program wypisuje wartość True; w przeciwnym wypadku – False.

RT60azLfDQ4AN
Wymyśl pytanie na kartkówkę związane z tematem materiału.
Polecenie 3

Zapoznaj się z filmem i porównaj z nim swoje rozwiązanie.

Uwaga:

W programie przedstawionym w filmie została wykorzystana instrukcja:
if __name__ == '__main__':
Nie jest ona konieczna, w trakcie dalszych lekcji zrozumiesz jej znaczenie. Jednak już teraz można z niej korzystać, aby nabrać nawyku jej wykorzystywania w bardziej rozbudowanych programach.

R1GhCl8fsk49X
Film nawiązujący do treści materiału wyrażeń arytmetycznych i logarytmicznych Python.

Kod programu (kalkulator) zaprezentowanego w filmie:

R1PSPUxWMQc8c

Przycisk do pobrania TXT z kodem źródłowym z filmu (kalkulator).

Plik TXT o rozmiarze 255.00 B w języku polskim

Kod programu (program sprawdzający, czy wskazany rok jest rokiem przestępnym) zaprezentowanego w filmie:

RYUcZDIdQ1qd3

Przycisk do pobrania TXT z kodem źródłowym z filmu (program sprawdzający, czy wskazany rok jest rokiem przestępnym).

Plik TXT o rozmiarze 150.00 B w języku polskim

Wykorzystując wybrany edytor napisz program w języku Python o powyższej specyfikacji.

Linia 1. if podkreślnik podkreślnik name podkreślnik podkreślnik znak równości znak równości apostrof podkreślnik podkreślnik main podkreślnik podkreślnik apostrof dwukropek. Linia 2. rok znak równości 2746. Linia 3. kratka Tutaj dodaj własny kod kropka Użyj funkcji. Linia 4. kratka print otwórz nawias okrągły zamknij nawias okrągły.
RArIz5VDNW5Sh