Programowanie obiektowe w C++
Transkrypt
Programowanie obiektowe w C++
1. Napisz program wyznaczający obwód trójkąta oraz jego pole (ze wzoru Herona). Należy zdefiniować klasę trojkat, w której boki a,b,c będą składowymi prywatnymi. Funkcje obliczające pole i obwód należy zdefiniować, jako metody publiczne. W klasie należy zdefiniować konstruktor bezparametrowy, w czasie działania którego użytkownik poda długości boków. W klasie należy zdefiniować destruktor informujący użytkownika o zniszczeniu obiektu. Wzór Herona : ܲ ൌ ඥሺ െ ܽሻሺ െ ܾሻሺ െ ܿሻ, gdzie ൌ Inna postać wzoru: ܲ ൌ ାା ଶ (połowa obwodu) ඥሺାାሻሺାିሻሺିାሻሺିାାሻ ସ 2. Napisz program obliczający odległość miedzy dwoma punktami na płaszczyźnie. Należy zdefiniować klasę punkt, gdzie współrzędne x i y będą składowymi publicznymi. Funkcja wczytująca punkt powinna metodą klasy. Funkcja obliczające odległość miedzy punktami powinna być funkcją globalną (można ją wywoływać np. tak: d=odleglosc(P1,P2)). Wzór na odległość między punktami A=(xA,yA) oraz B=(xB,yB): ݀ ൌ ඥሺݔ െ ݔ ሻଶ ሺݕ െ ݕ ሻଶ 3. Napisz program obliczający odległość miedzy dwoma punktami na płaszczyźnie. Należy zdefiniować klasę punkt, gdzie współrzędne x i y będą składowymi prywatnymi. Funkcja wczytujące punkt powinna metodą klasy Funkcja obliczająca odległość miedzy punktami powinna metodą klasy (można ją wywoływać np. tak: d=P1.odleglosc(P2)). 4. Uzupełnij poniższy kod o definicje funkcji tak, aby działał jak na zrzucie: #include <iostream> using namespace std; //--definicja klasy---class osoba { private: string imie, nazwisko; int wiek; public: osoba(string,string,int); ~osoba(); void wyswietl(); }; //--funkcja main---------int main(int argc, char *argv[]) { osoba x("Jan","Kowalski",40); x.wyswietl(); system("PAUSE"); return EXIT_SUCCESS; } //--definicje funkcji wyswietl, konstruktora i destruktora--//TU WPISAC KODY FUNKCJI 5. Uzupełnij poniższy kod tak, aby działał jak na zrzucie: #include <iostream> using namespace std; //--definicja klasy---class osoba { private: string imie, nazwisko; int wiek; public: osoba(string,string,int); ~osoba(); void wyswietl(); }; //--funkcja main---------int main(int argc, char *argv[]) { string i,n; int w; //TU WPISAC ODPOWIEDNIE INSTRUKCJE osoba x(i,n,w); x.wyswietl(); system("PAUSE"); return EXIT_SUCCESS; } //--definicje funkcji wyswietl, konstruktora i destruktora--//TU WPISAC KODY FUNKCJI 6. W klasie osoba (w programie z zadania 5) napisz metodę rok, która będzie wyznaczała datę urodzenia osoby. Metodę użyj w programie. W zadaniach 7-9 klasa osoba ma postać: class osoba { public: string imie, nazwisko; int wiek; }; 7. Napisz program wypełniający 10-elementową tablicę obiektów typu osoba i wyznaczający średni wiek podanych osób. 8. Napisz program wypełniający 10-elementową tablicę obiektów typu osoba i wyświetlający dane osoby najstarszej. 9. Napisz program wypełniający 10-elementową tablicę obiektów typu osoba i wyświetlający dane osoby najmłodszej. Opracował: Mirosław Całka