Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ObiektowkaOceniane_1.cpp : Defines the entry point for the console application.
- //
- #include "stdafx.h"
- #include <conio.h>
- #include <iostream>
- #include <Windows.h>
- #include <string.h>
- #include <math.h>
- #include <fstream>
- #include <sstream>
- using namespace std;
- class Figura {
- public:
- virtual string getNazwa() = 0;
- virtual double getObwod() = 0;
- virtual double getPolePowierzchni() = 0;
- };
- class Prostokat : Figura{
- private:
- double a;
- double b;
- public:
- Prostokat(double aVal, double bVal)
- {
- a = aVal;
- b = bVal;
- }
- ~Prostokat() {};
- string getNazwa()
- {
- return "Prostokat";
- }
- double getObwod()
- {
- return (2 * a) + (2 * b);
- }
- double getPolePowierzchni()
- {
- return a * b;
- }
- };
- class Kwadrat : Figura {
- private:
- double a;
- public:
- Kwadrat(double aVal)
- {
- a = aVal;
- }
- ~Kwadrat() {};
- string getNazwa()
- {
- return "Kwadrat";
- }
- double getObwod()
- {
- return (4 * a);
- }
- double getPolePowierzchni()
- {
- return (a * a);
- }
- };
- class Kolo : Figura {
- private:
- double r;
- public:
- Kolo(double rVal)
- {
- r = rVal;
- }
- ~Kolo() {};
- string getNazwa()
- {
- return "Kolo";
- }
- double getObwod()
- {
- return (2 * 3.14) * r;
- }
- double getPolePowierzchni()
- {
- return (2 * 3.14) * (r * r);
- }
- };
- class Elipsa : Figura {
- private:
- double r1;
- double r2;
- public:
- Elipsa(double r1Val, double r2Val)
- {
- r1 = r1Val;
- r2 = r2Val;
- }
- ~Elipsa() {};
- string getNazwa()
- {
- return "Elipsa";
- }
- double getObwod()
- {
- return (3.14 * ((3/2) * (r1 + r2) - sqrt(r1 * r2)));
- }
- double getPolePowierzchni()
- {
- return (3.14 * r1 * r2);
- }
- };
- /////// Uzytkownik!!
- int main()
- {
- string nazwaFigury;
- int tmp1;
- int tmp2;
- fstream plik;
- plik.open("NAZWAPLIKU", ios::in);
- if (plik.good())
- {
- while (!plik.eof()) {
- plik >> nazwaFigury;
- if (nazwaFigury == "Kwadrat")
- {
- plik >> tmp1;
- Kwadrat k1(tmp1);
- k1.getNazwa();
- k1.getObwod();
- k1.getPolePowierzchni();
- }
- if (nazwaFigury == "Prostokat")
- {
- plik >> tmp1 >> tmp2;
- Prostokat p1(tmp1, tmp2);
- p1.getNazwa();
- p1.getObwod();
- p1.getPolePowierzchni();
- }
- }
- }
- _getch();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement