Guest User

Untitled

a guest
Jun 21st, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. class CZbior{
  2. private:
  3. int tabInt[100];
  4. int licznik;
  5.  
  6. public:
  7. CZbior() {
  8. licznik=0;
  9. }
  10.  
  11. virtual void Dodaj(int wartosc){
  12. tabInt[licznik];
  13. licznik++;
  14. }
  15. virtual double Oblicz()=0;
  16. };
  17.  
  18.  
  19. class CZbiorSrednia : public CZbior{
  20. public:
  21. CZbiorSrednia() {
  22. licznik = 0; //moze byc ale nie musi :)
  23. }
  24.  
  25. double Oblicz(){
  26. double suma=0;
  27. for(int i=0 ; i<licznik; i++) suma+=tabInt[i];
  28. return suma/licznik;
  29. }
  30. };
  31.  
  32. class CZbiorMax : public CZbior{
  33. public:
  34. CZbiorMax() {
  35. licznik = 0; //moze byc ale nie musi :)
  36. }
  37.  
  38. double Oblicz(){
  39. double max = tabInt[0];
  40. for(int i = 1; i<licznik; i++){
  41. if(max<tabInt[i]){
  42. max = tabInt[i];
  43. }
  44. return max;
  45. }
  46.  
  47. void Dodaj(int wartosc) {
  48. if(licznik < 100) {
  49. tabInt[licznik] = wartosc;
  50. licznik++;
  51. }
  52. }
  53. };
  54.  
  55. int main() {
  56. CZbior *tab[4];
  57. tab[0] = new CZbiorSrednia();
  58. tab[1] = new CZbiorSrednia();
  59. tab[2] = new CZbiorMax();
  60. tab[3] = new CZbiorMax();
  61.  
  62. //dodaje 5 dowolnych liczb do kazdego ze zbiorow
  63. for(int i=0; i<4; i++) { //ta petla przechodzi przez elementy tablicy tab
  64. for(int j=0; j<5; j++) { //w tej petli dla kazdego obiektu dodaje 5 liczb do tablicy
  65. tab[i]->Dodaj(j);
  66. }
  67. }
  68.  
  69. //obliczam zbiory
  70. for(int i=0; i<4; i++) { //ta petla przechodzi przez elementy tablicy tab
  71. cout << tab[i]->Oblicz();
  72. }
  73. return 0;
  74. }
Add Comment
Please, Sign In to add comment