Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.52 KB | None | 0 0
  1. //Sa se implementeze clasa Telefon (nr_tel,nume_operator). Sa se deriveze din aceasta clasa
  2. //TelefonMobil(autonomie, tip_acumulator).
  3. #include<iostream>
  4. #include<conio.h>
  5. using namespace std;
  6.  
  7. class Telefon {
  8. protected:
  9.     int nr_tel;
  10.     char *nume_operator;
  11.     char *nume_telefon;
  12. public:
  13.     Telefon(int nr_tel, char *nume_operator, char *nume_telefon);
  14.     Telefon(Telefon &t);
  15.     ~Telefon();
  16.  
  17.     int getNr_tel();
  18.     void setNr_tel(int nr_tel);
  19.  
  20.     char *getNume_operator();
  21.     void setNume_operator(char *nume_operator);
  22.  
  23.     char *getNume_telefon();
  24.     void setNume_telefon(char *nume_telefon);
  25.  
  26.     void afisare();
  27. };
  28.  
  29.  
  30. Telefon::Telefon(int nr_tel, char *nume_operator, char *nume_telefon) {
  31.     this->nr_tel = nr_tel;
  32.     this->nume_operator = new char[strlen(nume_operator) + 1];
  33.     strcpy(this->nume_operator, nume_operator);
  34.     this->nume_telefon = new char[strlen(nume_telefon) + 1];
  35.     strcpy(this->nume_telefon, nume_telefon);
  36. }
  37.  
  38.  
  39. Telefon::Telefon(Telefon &t) {
  40.     nr_tel = t.nr_tel;
  41.     nume_operator = new char[strlen(t.nume_operator) + 1];
  42.     strcpy(nume_operator, t.nume_operator);
  43.     nume_telefon = new char[strlen(t.nume_telefon) + 1];
  44.     strcpy(nume_telefon, t.nume_telefon);
  45. }
  46.  
  47. Telefon::~Telefon() {
  48.     delete[] nume_operator;
  49.     delete[] nume_telefon;
  50.  
  51. }
  52.  
  53.  
  54. int Telefon::getNr_tel() {
  55.     return nr_tel;
  56. }
  57.  
  58.  
  59. void Telefon::setNr_tel(int nr_tel) {
  60.     this->nr_tel = nr_tel;
  61. }
  62.  
  63.  
  64. char *Telefon::getNume_operator() {
  65.     return nume_operator;
  66. }
  67.  
  68. void Telefon::setNume_operator(char *nume_operator) {
  69.     this->nume_operator = nume_operator;
  70. }
  71.  
  72.  
  73. char *Telefon::getNume_telefon() {
  74.     return nume_telefon;
  75. }
  76.  
  77. void Telefon::setNume_telefon(char *nume_telefon) {
  78.     this->nume_telefon = nume_telefon;
  79. }
  80.  
  81.  
  82. void Telefon::afisare() {
  83.     cout << "Nr.Telefon:" << nr_tel << endl;
  84.     cout << "Nume operator:" << nume_operator << endl;
  85.     cout << "Nume telefon:" << nume_telefon << endl;
  86. }
  87.  
  88.  
  89.  
  90. class TelefonMobil :public Telefon {
  91. protected:
  92.     int autonomie;
  93.     char *tip_baterie;
  94. public:
  95.     TelefonMobil(int nr_tel, char *nume_operator, char *nume_telefon, int autonomie, char *tip_baterie);
  96.     TelefonMobil(TelefonMobil &t);
  97.     ~TelefonMobil();
  98.     int getAutonomie();
  99.     void setAutonomie(int autonomie);
  100.     char *getTip_baterie();
  101.     void setTip_baterie(char *tip_baterie);
  102.     void afisare();
  103. };
  104.  
  105. TelefonMobil::TelefonMobil(int nr_tel, char *nume_operator, char *nume_telefon, int autonomie, char *tip_baterie) :Telefon(nr_tel, nume_operator, nume_telefon) {
  106.     this->autonomie = autonomie;
  107.     this->tip_baterie = new char[strlen(tip_baterie) + 1];
  108.     strcpy(this->tip_baterie, tip_baterie);
  109. }
  110. TelefonMobil::TelefonMobil(TelefonMobil &t) : Telefon(t.nr_tel, t.nume_operator, t.nume_telefon) {
  111.     autonomie = t.autonomie;
  112.     tip_baterie = new char[strlen(t.tip_baterie) + 1];
  113.     strcpy(tip_baterie, t.tip_baterie);
  114. }
  115.  
  116. TelefonMobil::~TelefonMobil() {
  117.     delete[]tip_baterie;
  118. }
  119. int TelefonMobil::getAutonomie() {
  120.     return autonomie;
  121. }
  122. void TelefonMobil::setAutonomie(int autonomie) {
  123.     this->autonomie = autonomie;
  124. }
  125.  
  126. char *TelefonMobil::getTip_baterie() {
  127.     return tip_baterie;
  128. }
  129. void TelefonMobil::setTip_baterie(char *tip_baterie) {
  130.     this->tip_baterie = tip_baterie;
  131. }
  132.  
  133. void TelefonMobil::afisare() {
  134.     cout << "Nr. tel:" << nr_tel << endl;
  135.     cout << "Nume operator:" << nume_operator << endl;
  136.     cout << "Nume telefon:" << nume_telefon << endl;
  137.     cout << "Autonomie:" << autonomie << endl;
  138.     cout << "Tip baterie:" << tip_baterie << endl;
  139. }
  140.  
  141.  
  142.  
  143.  
  144. int main() {
  145.     TelefonMobil t(0772121123, "RCS&RDS", "Allview X4 Soul", 48, "Li-on");
  146.     t.afisare();
  147.     _getch();
  148.     return 0;
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement