Prosty kalkulator

Zadanie 10 z 10 · rozdział 2Trudność: 2 z 3if-elif-elsearytmetykastringfloat

Treść zadania

Wczytaj liczbę a, operator i liczbę b, a następnie wypisz wynik działania a <operator> b.
Obsługiwane operatory to: + (dodawanie), - (odejmowanie), * (mnożenie), / (dzielenie).

Przypadki szczególne:

  • jeśli operator to /, a $b = 0$, wypisz Nie można dzielić przez zero.
  • jeśli operator nie jest jednym z czterech powyższych, wypisz Nieznany operator. (niezależnie od wartości b).

Dane wejściowe

  • 1. linia: a — liczba rzeczywista
  • 2. linia: operator — jeden znak
  • 3. linia: b — liczba rzeczywista

Dane wyjściowe

Jedna linia: wynik do 2 miejsc po przecinku (np. f"{wynik:.2f}") albo jeden z komunikatów.

Ograniczenia

  • $-10^6 \le a, b \le 10^6$

Uwagi

  • Operator wczytaj jako napis (dzialanie = input()) i porównuj go z napisami, np. if dzialanie == "+":.

Przykłady

Wejście
7
/
2
Wyjście
3.50
Wejście
5
/
0
Wyjście
Nie można dzielić przez zero.

Potrzebujesz teorii?

Zasady obowiązujące w rozdziale 2

Zadania w tym rozdziale ćwiczą podejmowanie decyzji w programie na podstawie warunków.

Konwencje wspólne:

  • Każde zadanie jest osobnym programem: czyta standardowe wejście i wypisuje wynik na standardowe wyjście.
  • Dane wejściowe wczytuj dokładnie w podanej kolejności, każdą wartość z osobnej linii (o ile nie napisano inaczej).
  • Wyniki wypisuj dokładnie jak w specyfikacji (w tym wielkość liter, polskie znaki, kropki, spacje).
  • Jeżeli zadanie mówi „nie wypisuj nic” — program ma zakończyć się bez żadnego wyjścia (bez spacji, bez pustej linii).
  • Program nie wypisuje komunikatów typu „Podaj liczbę:”. Tekst podany w input("…") jest ignorowany przez sprawdzarkę.

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
2
+
3
Oczekiwane wyjście
5.00

Test 2

Nie uruchomiono
Wejście
1.5
-
4
Oczekiwane wyjście
-2.50

Test 3

Nie uruchomiono
Wejście
-3
*
2.5
Oczekiwane wyjście
-7.50

Test 4

Nie uruchomiono
Wejście
10
/
3
Oczekiwane wyjście
3.33

Test 5

Nie uruchomiono
Wejście
0
/
0
Oczekiwane wyjście
Nie można dzielić przez zero.

Test 6

Nie uruchomiono
Wejście
8
%
3
Oczekiwane wyjście
Nieznany operator.

Test 7

Nie uruchomiono
Wejście
4
^
0
Oczekiwane wyjście
Nieznany operator.

Test 8

Nie uruchomiono
Wejście
-7.25
/
-0.5
Oczekiwane wyjście
14.50

Test 9

Nie uruchomiono
Wejście
1000000
*
1000000
Oczekiwane wyjście
1000000000000.00
Uruchom z własnymi danymi