Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Prosze napisac program wktorym jest klasa o nazwie trapez
- //he obiekty reprezentuja trapezy na plaszczysznie. Klasa ta ma pole prywatne
- // podstawa przechowuje ona dlugosc podstawy trapezu (liczba zmienno przecinkowa
- //podwojnej precyzji). Proszę wyprowadzić z niej w sposob publiczny
- // klase trapezRownRam ktora ma swoje wlasne pole kat i ramie
- //takiego wektora. Ponadto odpowiednia metoda klasy pochodnej
- //zwraca pole powierchni trapezu rownoraminnego
- // S = (a-b* cos(n)) *b * cos(n)
- //gdzie a = podstawa, b = ramie, n- kat miedzy ramieniem a podstawa
- //program powinnien dla trapezu rownareminnego wysweitlic pole jego powierzchni
- // z odpowiednim komentarzem. Inicjalizacja obiektow tej klasy nastepuje
- //z klawaitury na zadanie programu. Kazda klasa ma swoj konstruktor
- // Prosze tuworzyc w funkcji main po jednym obiekcie dla klasy bazowej i pochodnej
- // Odpowiednia metoda o nazwie wypisz powinna byc wywolywana polimorficznie
- // wypisac na ekran cala zawartosc obiektu pierwszego potem zawartosc obiektu
- // drygiego z odpowednim komentarzem
- #include<iostream>
- #include <cmath>
- class trapez {
- double podstawa;
- public:
- trapez();
- double zwroc_podstawe();
- virtual void wypisz();
- };
- trapez::trapez() {
- std::cout<<"Podaj podstawe trapezu: "<<std::endl;
- std::cin>>podstawa;
- }
- void trapez::wypisz() {
- std::cout<<"Podstawa trapezu: "<<podstawa<<std::endl;
- }
- double trapez::zwroc_podstawe() {
- return podstawa;
- };
- class trapezRownRam : public trapez {
- double ramie;
- double kat;
- double S;
- public:
- trapezRownRam();
- double pole_powierzchni();
- void wypisz();
- };
- trapezRownRam::trapezRownRam() : trapez() {
- std::cout<<"Podaj ramie: "<<std::endl;
- std::cin>>ramie;
- std::cout<<"Podaj kat:" <<std::endl;
- std::cin>>kat;
- };
- double trapezRownRam::pole_powierzchni() {
- double a = zwroc_podstawe();
- double b = ramie;
- double n = kat;
- S = (a-b * cos(kat)) * b * cos(n);
- return S;
- };
- void trapezRownRam::wypisz() {
- std::cout<<"Podstawa trapezu: "<<zwroc_podstawe()<<std::endl;
- std::cout<<"Kat: "<<kat<<std::endl;
- std::cout<<"Ramie: "<<ramie<<std::endl;
- std::cout<<"Pole powrzechni: "<< pole_powierzchni()<<std::endl;
- }
- int main() {
- trapez t1;
- trapez *t2 = new trapezRownRam;
- t1.wypisz();
- t2->wypisz();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement