ობიექტზე ორიენტირებული დაპროგრამების საკონტროლოს ერთ-ერთი ამოცანა და ამოხსნა

შექმენით კლასი ბოოკ მონაცემებით: წიგნის დასახელება, ავტორის გვარი, გვერდების რაოდენობა. კლასში შემოიღეთ ფუნქციები: კონსტრუქტორი გაჩუმებით, დესტრუქტორი და ბეჭდვის ფუნქცია. ბოოკ კლასის საფუძველზე შექმენით კლასი ლიბრარყ_ცარდ მონაცემებით: კატალოგის მაჩვენებელი (მაგალითად, 101CPP) და სტატუსის მაჩვენებელი (გაცემულია – არ არის გაცემული). ლიბრარყ_ცარდ კლასში გაითვალისწინეთ ფუნქციები: კონსტრუქტორი გაჩუმებით, დესტრუქტორი და ბეჭდვის ფუნქცია. მაინ()-ში მოახდინეთ აგებული კლასების ტესტირება – დაბეჭდეთ ბიბლიოთეკის ბარათის ინფორმაცია

 

ამოხსნა :

#include <iostream>

#include <string>

using namespace std;

 

class Book

{

protected :

string name , author;

int pages;

public :

Book (string n=”Didostatis marjvena”, string a=”Gamsaxurdia”, int p =429);

~Book () {}

friend ostream& operator<< (ostream& os, Book &b);

};

 

class Library_Card : public Book {

private :

string catalog, status;

public :

Library_Card(string n=”Didostatis marjvena”, string a=”Gamsaxurdia”, int d=429, string c=”101PPC”, string s=”Gacemulia”) : Book(n,a,d) {

catalog = c ; status = s;

}

~Library_Card () {};

friend ostream& operator<< (ostream& os, Library_Card &LC);

};

 

Book ::Book (string n, string a, int p ) {

name = n ; author = a ; pages = p;

}

 

ostream& operator<< (ostream& os, Book &b)

{

os <<“Book Name : “<<b.name<<endl<<

“Author of this book : ” <<b.author<<endl<<

“Quantity of pages of the book : “<<b.pages<<endl;

return os;

}

 

ostream& operator<< (ostream& os, Library_Card &LC) {

os <<“Book Name : “<<LC.name<<endl<<

“Author of this book : ” <<LC.author<<endl<<

“Quantity of pages of the book : “<<LC.pages<<endl<<

“Catalog Number : “<<LC.catalog<<endl<<

“Status of the book : “<<LC.status<<endl;

return os;

}

 

 

int main ()

{

Library_Card LC(“C++ , How to program ?”, “Deitel & Deitel” , 1272 , “150CPP” , “Gacemulia”);

cout<<LC<<endl<<endl;

 

system(“PAUSE”);

return 0;

}

 

 

 

 

 

Leave a Reply / უპასუხე

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / შეცვლა )

Twitter picture

You are commenting using your Twitter account. Log Out / შეცვლა )

Facebook photo

You are commenting using your Facebook account. Log Out / შეცვლა )

Google+ photo

You are commenting using your Google+ account. Log Out / შეცვლა )

Connecting to %s