Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <string>
- #include <iostream>
- class Dzialanie {
- public:
- std::string nazwa;
- Dzialanie(std::string nazwa) : nazwa(nazwa) {};
- virtual double licz(const double a, const double b) const = 0;
- };
- class Suma : public Dzialanie {
- public:
- Suma(std::string nazwa) : Dzialanie(nazwa) {};
- double licz(const double a, const double b) const {
- return a + b;
- }
- };
- class Roznica : public Dzialanie {
- public:
- Roznica(std::string nazwa) : Dzialanie(nazwa) {};
- double licz(const double a, const double b) const {
- return a - b;
- }
- };
- class Iloczyn : public Dzialanie {
- public:
- Iloczyn(std::string nazwa) : Dzialanie(nazwa) {};
- double licz(const double a, const double b) const {
- return a * b;
- }
- };
- class Iloraz : public Dzialanie {
- public:
- Iloraz(std::string nazwa) : Dzialanie(nazwa) {};
- double licz(const double a, const double b) const {
- return a / b;
- }
- };
- int main() {
- Suma dodaj("dodaj");
- Roznica odejmij("odejmij");
- Iloczyn pomnoz("pomnoz");
- Iloraz podziel("podziel");
- Dzialanie* dzialania[4] = {&dodaj, &odejmij, &pomnoz, &podziel};
- std::cout << "Podaj dwie liczby:" << std::endl;
- double a = 0.0, b = 0.0;
- std::cin >> a >> b;
- std::cout << "Wybierz dzialanie:" << std::endl;
- for(int i = 0; i < 4; i++) {
- std::cout << i << ". " << dzialania[i]->nazwa << std::endl;
- }
- int dzialanie = 0;
- std::cin >> dzialanie;
- std::cout << dzialania[dzialanie]->licz(a,b) << std::endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement