Advertisement
Guest User

Untitled

a guest
Nov 17th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. class TablicaInt{
  4. private:
  5. int* tab;
  6. int rozmiar;
  7.  
  8. public:
  9. TablicaInt(int n){
  10. tab = new int[n]();
  11. rozmiar = n;
  12. }
  13. ~TablicaInt(){
  14. delete[] tab;
  15. }
  16. int wezRozmiar()const{
  17. return rozmiar;
  18. }
  19. void ustawRozmiar(int nowy){
  20. if(nowy == rozmiar) return;
  21.  
  22. int* foo = new int[nowy]();
  23. if(nowy > rozmiar){
  24. for(int i = 0; i < rozmiar; i++){
  25. foo[i] = tab[i];
  26. }
  27. } else {
  28. for(int i = 0; i < nowy; i++){
  29. foo[i] = tab[i];
  30. }
  31. }
  32. rozmiar = nowy;
  33. delete[] tab;
  34. tab = foo;
  35. }
  36. void ustawElement(int indeks, int element){
  37. if(indeks < 0) return;
  38. if(!indeks < rozmiar)
  39. ustawRozmiar(indeks + 1);
  40. tab[indeks] = element;
  41. }
  42. int wezElement(int indeks){
  43. if(indeks >= rozmiar || indeks < 0) return 0;
  44. return tab[indeks];
  45. }
  46. };
  47.  
  48. int main() {
  49. TablicaInt t1 = TablicaInt(10);
  50. int elementy[] = {5,2,4,3,7,8,9,2,1,3};
  51. for(int i = 0; i < 10; i++){
  52. t1.ustawElement(i, elementy[i]);
  53. }
  54.  
  55. t1.ustawElement(20, 5);
  56.  
  57. for(int i = 0; i < t1.wezRozmiar(); i++){
  58. std::cout << t1.wezElement(i) << ((i == t1.wezRozmiar()-1) ? "\n" : ", ");
  59. }
  60.  
  61. t1.ustawRozmiar(3);
  62.  
  63. for(int i = 0; i < t1.wezRozmiar(); i++){
  64. std::cout << t1.wezElement(i) << ((i == t1.wezRozmiar()-1) ? "\n" : ", ");
  65. }
  66.  
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement