Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  

CATEGORII DOCUMENTE





AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

Polimorfismul. Clase abstracte

calculatoare

+ Font mai mare | - Font mai mic







DOCUMENTE SIMILARE

Trimite pe Messenger
Grafuri neorientate - Teste grila
Strategii de realizare a produselor informatice
Porturi
COMPRESIA AUDIO
Componentele guvernarii electronice
Internet cu implicatii la proiectarea sistemelor
LIMBAJE DE PROGRAMARE - Scurta prezentare a limbajelor de programare
Notiuni de HTML
Sisteme suport de decizie
Incarcarea sistemului si procesul init

Polimorfismul. Clase abstracte

Polimorfismul este capacitatea unui singur obiect de a lua forme multiple. Acest lucru se realizeaza prin intermediul pointerilor. Polimorfismul are la baza mostenirea. Se realizeaza prin intermediul functiilor virtuale.



            In exemplul de mai jos am construit o clasa abstracta (folosita pentru un caz general). Din ea deriva clase ce ne ofera posibilitatea de a face citiri si afisari pe numere sau siruri de caractere.

#include<iostream.h>

#include<stdio.h>

class abstract

;

class numar:public abstract

  virtual void afisare()

  

};

 

class sir:public abstract

  virtual void afisare()

  

};

void main()

Subiect 8.

/*

Sa se realizeze o aplicatie pentru lucrul cu nr complexe:

  - constructori de initializare si copiere

  - functii operator supraincarcati pentru citire si afisare

  - supraincarcarea operatorului + pentru adunarea a doua nr complexe

  - supraincarcarea operatorului * pentru inmultirea a doua nr complexe

  - supraincarcarea operatorului ! pentru modulul unui nr complex

*/

#include<iostream.h>

#include<math.h>

class complex

;

complex::complex()

complex::complex(complex &z)

complex::complex (float x, float y)

istream& operator>>(istream& in, complex& z)

ostream& operator<<(ostream& out, complex z)

complex complex:: operator+ (complex t)

complex complex::operator-()

complex complex:: operator* (complex t)




void main()

Subiect 9.

/* Sa se realizeze o aplicatie ptr lucrul cu numere rationale. Se vor folosi operatori supraincarcati.

+ ptr adunarea a doua nr rationale

* ptr inmultirea a doua nr rationale

>> ptr citirea a doua nr rationale

<< ptr afisarea a doua nr rationale */

#include<iostream.h>

#include<math.h>

class rational

{

  int numarator;

  int numitor;

  int cmmdc(int,int);

  void ireductibil();

 public:

  rational()         //constructor de initializare implicit

  rational(int,int);   //constructor de initializare cu parametri

  friend istream& operator>>(istream&,rational&);  //citirea unui nr rational

  friend ostream& operator<<(ostream&,rational);   //afisarea unui nr rational

  rational operator+(rational&);  //supraincarcarea operatorului + ptr adunarea

                                  a doua nr rationale

  rational operator*(rational&);  //supraincarcarea operatorului * ptr

                                  inmultirea a doua nr. rationale

};

int rational::cmmdc(int a,int b)

void rational::ireductibil()

 if(numitor<0)

  

}

rational::rational(int a,int b)

istream& operator>>(istream& in, rational& r)

ostream& operator<<(ostream& out,rational r)

rational rational::operator+(rational& r)

rational rational::operator*(rational& r)

void main()








Politica de confidentialitate

DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 393
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2019 . All rights reserved

Distribuie URL

Adauga cod HTML in site