Zadania domowe, Ćwiczenia Vistula


Zadania do samodzielnego wykonania i oceniane jako praca domowa

Zadanie 1

Zdefiniuj klasę KOLO, która powinna zawierać:

Uruchom w programie głównym sekwencję instrukcji dla dwóch obiektów K1, K2: konstruktor bezparametrowy, porównanie pól, ustawienie tego samego koloru, porównanie pól, ustawienie różnych kolorów, porównanie pól. Użyj na końcu konstruktora z parametrami dla obiektów K3, K4 i pokaż różne warianty ich porównania.

Uwaga:

Wyższą ocenę uzyska rozwiązanie z udziałem wskaźników na obiekty oraz uwalnianie pamięci dynamicznej.

Zadanie 2

Zdefiniuj klasę PROSTOKAT, która powinna zawierać:

Zdefiniuj funkcję zaprzyjaźnioną Czy_Kwadrat(PROSTOKAT A), porównującą boki prostokąta (czy jest kwadratem).

Uruchom w programie głównym sekwencję instrukcji dla dwóch obiektów P1, P2: konstruktor bezparametrowy, porównanie czy kwadrat. Użyj też konstruktora z parametrami dla obiektów P3, P4 oraz P5, P6 i pokaż różne warianty porównania ich z kwadratem.

Uwaga:

Wyższą ocenę uzyska rozwiązanie z udziałem wskaźników na obiekty oraz uwalnianie pamięci dynamicznej.

Zadanie 3

Należy zbudować funkcje konstruktorów w hierarchii klas pochodnych do inicjalizacji obiektów A i B, jeśli utworzono je tak, jak pokazano w funkcji main() programu.

//klasa bazowa A

class klasa_A

{ public:

int liczba_int;

public:

.......... tu definicja konstruktora klasy A

void pisz_dane()

{cout<<"liczba int: "<<liczba_int<<endl;}

};

//klasa pochodna B

class klasa_B:public klasa_A

{ char tekst[20];

public:

.......... tu definicja konstruktora klasy B

void pisz_dane()

{cout<<"tekst: "<<tekst<<endl;}

};

void main(void)

{ klasa_A obiekt_A(1); //utworzenie obiektu A klasy bazowej A

klasa_B obiekt_B(2,"Jas Fasola"); //utworzenie obiektu B klasy pochodnej B

A.pisz_dane();

B.pisz_dane();

}

Zadanie 4

Wzorując się na załączonym programie, w którym klasa moneta pochodzi od klasy pieniadz, zbuduj nową klasę pochodną banknot. Zakłada się, że wyróżnikiem monety jest liczba stopów z jakich jest odlana (np. 2zł, 5zł z dwóch stopów, 1gr...1zł - z jednego), natomiast wyróżnikiem banknotu jest znak dotykowy dla niewidomych (10zł-koło, 20zł - romb, 50zł-kwadrat, 100zł-minus, 200zł - plus), które zadeklarowano jako typ wyliczeniowy. Utwórz kilka obiektów poprawnych dla bieżącej polskiej waluty i wyświetl ich dane na ekranie.

enum typ {MONETA=0, BANKNOT=1};

enum symbol {KOLO=0,ROMB=1,KWADRAT=2,MINUS=3,PLUS=4};

//klasa bazowa

class pieniadz

{ protected:

int wartosc;

typ rodzaj;

public:

pieniadz(int x, typ y)

{wartosc=x; rodzaj=y;}

virtual void pisz_dane()=0;

};

//klasa pochodna „moneta”

class moneta: public pieniadz

{ private:

int liczba_stp;

public:

moneta(int x,typ y, int z):pieniadz(x,y)

{liczba_stp=z;}

void pisz_dane()

{cout<<"wartosc: "<<wartosc<<"zl"<<endl;

cout<<"typ: "<<rodzaj<<endl;

cout<<"liczba stopow: "<<liczba_stp<<endl<<endl;}

};

................ tu utwórz klasę pochodną „banknot”

void main(void)

{..........}

Zadanie 5

Co należy zmienić w programie poniżej, aby funkcjonował poprawnie?

//klasa bazowa

class klasa_A

{ private:

int liczba_int;

public:

void daj_dane(int x)

{liczba_int=x;}

void pisz_dane()

{cout<<"liczba int: "<<liczba_int<<endl;}

};

//klasa pochodna B

class klasa_B:public klasa_A

{ private:

char tekst[20];

public:

void daj_dane(int x,char *txt)

{liczba_int=x; strcpy(tekst,txt);}

void pisz_dane()

{cout<<"tekst: "<<tekst<<endl;}

};

void main (void)

{ klasa_A A; klasa_B B;

A.daj_dane(1); A.pisz_dane();

B.daj_dane(2,”Jakis tekst”);B.pisz_dane();

}

Zadanie 6

Utwórz klasę wektor - jednowymiarową tablicę wartości typu float. Klasa powinna zawierać:

Zadanie 7

Utwórz klasę wektor - jednowymiarową tablicę wartości typu int. Klasa powinna zawierać:

Zadanie 8

Dla omawianej na ćwiczeniach klasy plik dokonaj jej rozbudowy o funkcje:

void main()

{ plik plik1(„pl1.txt”), plik2(„p12.txt”, plik3(„pl3.txt”);

plik1 = plik2 + plik3; }



Wyszukiwarka

Podobne podstrony:
Zadanie domowe, ćwiczenia - grammaire
Zadanie domowe ćwiczenia 8
zadanie domowe(2), ćwiczenia - grammaire
zadanie domowe(1), ćwiczenia - grammaire
Zadanie domowe, ćwiczenia - grammaire
zadanie domowe nr2, ćwiczenia - grammaire
Zadania na zaliczenie 12.01.08, Ćwiczenia Vistula
Zadanie domowe 2, Zarządzanie, II rok, Rachunkowość zarządcza, ćwiczenia
zadanie domowe 1, Psychologia, Podstawowe procesy poznawcze - ćwiczenia
28.02. kazus zadanie domowe, PRAWO, ROK 3, Prawo ROK II- semestr II, Prawo karne- ćwiczenia
Zadanie domowe - rach. zarządcza, Zarządzanie, II rok, Rachunkowość zarządcza, ćwiczenia
Ćwiczenia 1 zadanie domowe
Pierwiastki Zadanie domowe [PDF], Pierwiastki Rozwiązanie zadania domowego
Zadania domowe 9, inżynieria środowiska UKSW, chemia kolokwium 2
zadanie domowe matematyka, scenariusze
reakcje metali z kwasami wniosek zadanie domowe
współczesna, Różewicz Zadanie domowe
Zadania domowe rozwiązania

więcej podobnych podstron