zajecia 06 grupa 04s


Dana jest klasa Zbior (strona.1) oraz funkcja main( ) (strona.2):
 uzupełnij brakujące miejsca w programie
 uzupełnij program o brakujące funkcje operatorowe tak aby kod funkcji main() mógł się wykonać
poprawie zgodnie z zasadą działania zastosowanych operatorów
 FUNKCJE OPERATOROWE O ILE TO MOŻLIWE JAKO FUNKCJE SKAADOWE KLASY z
DEFINICJ NA ZEWNTRZ KLASY & K :: operator+( & ) - inne będą traktowane jako błąd !!!
//=======================================
#define MOJTYP double
#define DANE_SIZE 10
typedef unsigned short int USINT
//=======================================
class Zbior{
private:
MOJTYP* m_Tab1D;
USINT m_Dane[ DANE_SIZE ];
const unsigned int m_uSize;
private:
void Wypelnij( MOJTYP* pTab, unsigned int a_uSize, MOJTYP var ){
for( unsigned int i = 0; i < a_uSize; ++i )
pTab[i] = var;
}
public:
// uzupełnij brakujące konstruktory
Zbior():m_uSize(5){
m_Tab1D = new MOJTYP[m_uSize];
this->wypelnij( m_Tab1D, m_uSize, 2.2 );
for( unsigned int i = 0; i < DANE_SIZE; ++i )
m_Dane[i] = (USINT)(1);
}
~Zbior(){
delete [] m_Tab1D;
}
void wyswietl( ){
for( unsigned int i = 0; i < m_uSize; ++i )
cout << m_Tab1D[i] << " " ;
cout << endl << "--------------------------" << endl;
for( unsigned int i = 0; i < DANE_SIZE; ++i )
cout << m_Dane[i] << " " ;
cout << endl << "==========================" << endl;
}
// uzupelnij o brakujace skladowe funkcje operatorowe
};
//=======================================
// TUTAJ WSTAW DEFINICJE FUKCJI OPERATOROWYCH
//=======================================
int main(){
Zbior a;
Zbior b(a);
Zbior c(b);
MOJTYP dZ = -1.0;
unsigned int var = 6;
a.wyswietl();
b.wyswietl();
c.wyswietl();
a = b + c; // nowe operatory +2 (Zbior = Zbior)(Zbior = Zbior + Zbior)
a.wyswietl();
b.wyswietl();
c.wyswietl();
c = b * var; // nowe operatory +1 (Zbior = Zbior * unsigned int)
a.wyswietl();
b.wyswietl();
c.wyswietl();
c = c / (-0.75); // nowe operatory +1 (Zbior = Zbior / double)
a.wyswietl();
b.wyswietl();
c.wyswietl();
a = 1.0 / c; // nowe operatory +1 ( Zbior = ( double / Zbior ) )
a.wyswietl();
b.wyswietl();
c.wyswietl();
b = dZ; // nowe operatory +1 ( Zbior = MOJTYP )
a.wyswietl(); // wpisz do tablicy obiektu c wartości ze zmiennej dZ
b.wyswietl();
c.wyswietl();
c = -b + a; // nowe operatory +1 ( Zbior = -Zbior )
a.wyswietl();
b.wyswietl();
c.wyswietl();
float suma_elementow = (float)(c); // nowe operatory +1 ( float = Zbior )
// suma elementow m_Tab1D !!!
cout << "Suma wszystkich elementow tablicy2D w w obiekcie c = " << suma_elementow << endl;
return 0;
};


Wyszukiwarka

Podobne podstrony:
zajecia 06 grupa 02s
zajecia 06 grupa 03s
zajecia 06 grupa 026
zajecia nr 8 grupa 03
zajecia nr 5 grupa 04
zajecia 10 grupa 04x
zajecia 11 grupa 03c
zajecia 10 grupa 01x
zajecia nr 5 grupa 03
zajecia 07 grupa 017
zajecia 11 grupa 022
zajecia nr 6 grupa 04
zajecia 09 grupa 01z
zajecia 08 grupa 03f
zajecia 12 grupa 013
zajecia 07 grupa 03d

więcej podobnych podstron