Operatory arytmetyczne w C++
Zastanawialiście się kiedyś, co można by było robić na komputerze gdyby nie było matematyki (oczywiście pomijamy fakt, że w takim wypadku komputery by w ogóle nie istniały)? Odpowiedź jest prosta: nic. Wszystkie aplikacje komputerowe oraz strony internetowe działają w oparciu o różne algorytmy, mniej lub bardziej skomplikowane.
Jednymi z najprostszych zadań matematycznych jakie możemy sobie wyobrazić i jakie może wykonać program komputerowy jest dodawanie, odejmowani, mnożenie oraz dzielenie. W C++, jak i w innych językach programowania mamy do dyspozycji tak zwane operatory arytmetyczne, którymi są po prostu zwykłe znaki matematyczne:
Operator | Opis |
+ | dodawanie (plus dwuargumentowy) |
– | odejmowanie (minus dwuargumentowy) |
– | zmiana znaku (minus jednoargumentowy) |
* | mnożenie |
/ | dzielenie |
% | dzielenie modulo |
++x | pre-inkremetacja (zmiennej x) |
x++ | post-inkrementacja (zmiennej x) |
– -x | pre-dekrementacja (zmiennej x) |
x- – | post-dekrementacja (zmiennej x) |
Dzięki nim, program komputerowy może wykonywać różnego rodzaju obliczenia. Napiszmy więc prosty cztero-działaniowy kalkulator.
Ten prosty program, demonstruje sposób działania operatorów arytmetycznych. Analizując kod, dokładnie przyjrzyj się w jaki sposób cała aplikacja działa i jaką drogę pokonują dane podczas wykonywania się programu. Możesz też zbudować bardziej skomplikowane działania na przykład: ((5-9) * 2) / (4 -2). Pamiętaj jednak o zadeklarowaniu odpowiedniego typu danych dla zmiennych, które będą zawierać wyniki.
#include <iostream> using namespace std; int main() { cout << "Podaj liczbę A:"; int a = 0; //deklaracja i inicjalizacja zmiennej a cin >> a; //wczytujemy dane do zmiennej a cout << "Podaj liczbę B (różną od 0):"; int b = 0; //deklaracja i inicjalizacja zmiennej b cin >> b; //wczytujemy dane do zmiennej b cout << "Wynik dodawania: " << a + b << endl //dodawania << "Wynik odejmowania: " << a - b << endl //odejmowanie << "Wynik dzielenia: " << a / b << endl //dzielenie << "Wynik dzielenia modulo: " << a % b << endl //dzielenie modulo << "Wynik mnożenia: " << a * b << endl //mnożenie << "Pre-inkrementacja zmiennej a: " << ++a << endl //pre-inkrementacja << "Post-inkrementacja zmiennej a: " << a++ << endl //post-inkrementacja << "Pre-dekrementacja zmiennej b: " << --b << endl //pre-dekrementacja << "Post-dekrementacja zmiennej b: " << b-- << endl; //post-dekrementacja //endl - nowa linia return 0; }
Zadania
- Jaki będzie wynik obliczeń wyrażeń: 4 % 9; –2-8; 4/5 % 3; 3/(5 % 2); 8 / 6; 2 / 4. Aby uzyskać wyniki nie używaj kalkulatora, ale napisz odpowiedni program w C++.
Wiatm! Mam mały problem gdyż po wprowadzeniu kodu wyskakuje mi błąd plik 'źródłowy nie jest skompilowany’ i podkreśla mi return na czerwono
A coś więcej? Jaka wersja IDE?
Sorki że zawracam głowę pierdółkami. Działa już. Błąd w pisowni.
Ale u mnie czy u Ciebie?
U mnie
Czy operatory arytmetyczne (*,/,+,-) można zapisać jako zmienną char lub innego typu?
Mam za zadanie napisać kalkulator pobierający na wejściu operator, oraz dwie liczby i podający wynik działania.
Użyłem zmiennej char, ale nie działa poprawnie. Czy zamiast tego muszę napisać proste menu w którym 1 to mnożenie, 2 dzielenie itp? Musi być jakiś sprytniejszy sposób
Hej,
Tutaj musiałbyś faktycznie wczytywać te operatory jako typ char, a następnie sprawdzać który to operator (np. poprzez instrukcję if lub switch) i wykonywać odpowiednie działanie.