Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- #include <ctime>
- #include <cstdlib>
- using namespace std;
- class Zwierzak{
- protected:
- char imie[50];
- public:
- int wiek;
- int id;
- int waga;
- char plec[50];
- char* dzwiek;
- void jedzenie();
- void dajdzwiek();
- void mowa();
- virtual void wypisz()=0;
- void setID(int a);
- int getID();
- virtual void czypech()=0;
- void operator!(); //operatory jednoargumentowe
- void operator*();
- };
- class Kot : public Zwierzak{
- public:
- char rasa[50];
- char kolor[50];
- Kot(char imie2[], char plec2[], int waga2, int wiek2, char rasa2[], char kolor2[]);
- void wypisz();
- void czypech();
- ~Kot();
- };
- class Zmija : public Zwierzak{
- public:
- char kolor[];
- Zmija(char imie2[], char plec2[], int waga2, int wiek2, char kolor2[]);
- void wypisz();
- void czypech();
- ~Zmija();
- };
- //Zwierzak
- int Zwierzak :: getID()
- {
- return id;
- }
- void Zwierzak :: setID(int a)
- {
- id = a;
- }
- void Zwierzak :: jedzenie()
- {
- char tab[4];
- char s2[]="tak";
- char s3[]="nie";
- cout<<"Czy nakarmic? (tak/nie)"<<endl;
- cin>>tab;
- if (strcmp(tab, s2)==0)
- {
- cout<<"Zwierze wazylo: "<<waga<<endl;
- waga++;
- cout<<"Teraz wazy: "<<waga<<endl;
- }
- if (strcmp(tab, s3)==0)
- {
- cout<<"Zwierze wazylo: "<<waga<<endl;
- waga--;
- cout<<"Teraz wazy: "<<waga<<endl;
- }
- }
- void Zwierzak :: dajdzwiek()
- {
- char tab[100];
- cout<<"Jaki dzwiek wydaje ten zwierzak?"<<endl;
- cin>>tab;
- int a;
- a = strlen(tab);
- dzwiek = new char[a];
- strcpy(dzwiek, tab);
- cout<<"Zwierzak mowi: "<<dzwiek<<endl;
- }
- void Zwierzak :: mowa()
- {
- int i;
- srand(time(0));
- int b;
- b = rand()%10;
- if(dzwiek!=NULL)
- {
- cout<<"Monolog zwierzaka"<<endl;
- for(i=0; i<=b; i++)
- {
- cout<<dzwiek<<" ";
- }
- cout<<endl;
- }
- else
- {
- cout<<"Zwierzak jeszcze nie umie mowic."<<endl;
- }
- }
- void Zwierzak :: operator!()
- {
- cout<<"Kolejny rok za mna powiedzial zwierzak w swoje urodziny."<<endl;
- wiek++;
- }
- void Zwierzak :: operator*()
- {
- cout<<"Eliksir mlodosci! Zyc nie umierac."<<endl;
- cout<<"Bylo "<<wiek<<endl;
- wiek--;
- cout<<"Jest "<<wiek<<endl;
- }
- //Kot
- Kot :: Kot(char imie2[], char plec2[], int waga2, int wiek2, char rasa2[], char kolor2[]) //konstruktor
- {
- strcpy(imie, imie2);
- strcpy(plec, plec2);
- waga = waga2;
- wiek = wiek2;
- strcpy(rasa, rasa2);
- strcpy(kolor, kolor2);
- }
- Kot :: ~Kot() //destruktor
- {
- cout<<"Wywolano destruktor kota"<<endl;
- if(dzwiek!=NULL)
- {
- cout<<"Usuwam dzwiek kota"<<endl;
- delete dzwiek;
- }
- }
- void Kot :: wypisz()
- {
- cout<<endl<<"Numer: "<<id<<endl;
- cout<<"KOT"<<endl<<"Imie: "<<imie<<endl<<"Plec: "<<plec<<endl<<"Waga: "<<waga<<endl<<"Wiek: "<<wiek<<endl<<"Rasa kota: "<<rasa<<endl<<"Kolor: "<<kolor<<endl;
- }
- void Kot :: czypech()
- {
- char s2[]="Czarny";
- if (strcmp(kolor,s2)==0)
- {
- cout<<"Kot przynosi pecha!"<<endl;
- }
- if (strcmp(kolor,s2)!=0)
- {
- cout<<"Kot nie przynosi pecha."<<endl;
- }
- }
- //Zmija
- Zmija :: Zmija(char imie2[], char plec2[], int waga2, int wiek2, char kolor2[]) //konstruktor
- {
- strcpy(imie, imie2);
- strcpy(plec, plec2);
- waga = waga2;
- wiek = wiek2;
- strcpy(kolor, kolor2);
- }
- Zmija :: ~Zmija() //destruktor
- {
- cout<<"Wywolano destruktor zmii"<<endl;
- }
- void Zmija :: wypisz()
- {
- cout<<endl<<"Numer: "<<id<<endl;
- cout<<"ZMIJA"<<endl<<"Imie: "<<imie<<endl<<"Plec: "<<plec<<endl<<"Waga: "<<waga<<endl<<"Wiek: "<<wiek<<endl<<"Kolor: "<<kolor<<endl<<endl;
- }
- void Zmija :: czypech()
- {
- cout<<"Nie jestem kotem! ~Zmija"<<endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement