Advertisement
Hyluss

Macierz dziedziczenie

Jul 2nd, 2016
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.22 KB | None | 0 0
  1. // Macierzedziedziczenie.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <string.h>
  6. #include <stdlib.h>
  7. #include <conio.h>
  8. #include <cstdio>
  9. #include <stdio.h>
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16. class Macierz
  17. {
  18. int wiersze;
  19. int kolumny;
  20.  
  21. public:
  22. Macierz (int w, int k);
  23.  
  24. void Ustaw (const int wi,const int ko,const float value, float** tab);
  25.  
  26. int Wiersze();
  27. int Kolumny();
  28.  
  29. float Pobierz (int wi, int ko, float **tab);
  30.  
  31. };
  32.  
  33. Macierz::Macierz (int w, int k) : wiersze (w), kolumny (k)
  34. {
  35. }
  36.  
  37.  
  38. void Macierz::Ustaw (const int wi, const int ko,const float value, float** tab)
  39. {
  40.     float** ptr = tab;
  41.  
  42.     float* ptrf;
  43.     ptrf = ptr[ko];
  44.     ptrf[wi]=value;
  45.  
  46.     ptr[ko][wi] = value;
  47.  
  48.     tab[ko][wi]=value;
  49. }
  50.  
  51.  
  52.  
  53. int Macierz::Wiersze()
  54. {
  55.     return wiersze;
  56. }
  57.  
  58. int Macierz::Kolumny()
  59. {
  60.     return kolumny;
  61. }
  62.  
  63.  
  64.  
  65. float Pobierz (int wi, int ko, float** tab)
  66. {
  67.     return tab[ko][wi];
  68. }
  69.  
  70.  
  71.  
  72. /////////////////////////////////////////
  73. class MacierzWeWy : public Macierz
  74. {
  75. // inty
  76. // ??? void Wprowadz();
  77. protected:
  78. MacierzWeWy (int w, int k);
  79. };
  80.  
  81. MacierzWeWy::MacierzWeWy (int w, int k)
  82. : Macierz (w,k)
  83. {
  84. }
  85.  
  86. //////////////////////////////
  87.  
  88. int _tmain(int argc, _TCHAR* argv[])
  89. {
  90.  
  91.  
  92.  
  93. int w;
  94. int k;
  95. float** tab;
  96.  
  97.  
  98.  
  99. printf ("podaj wielkosci tablic:\nilosc wierszy \n");
  100. scanf ("%d",&w);
  101. printf ("i ilosc kolumn \n");
  102. scanf ("%d",&k);
  103.  
  104. Macierz macierz (w, k);
  105.  
  106.  
  107.  
  108.  
  109. tab = (float**)malloc (sizeof (float*)*k);
  110.     for (int i=0; i<k;i++)
  111.     {
  112. //      (float *)tab[i] = (float*) malloc (sizeof (float)*w);
  113.         tab[i] = (float*) malloc (sizeof (float)*w);
  114.     }
  115.  
  116.  
  117. for (int i=0; i<k;i++)
  118. {
  119.     for (int j=0;j<w;j++)
  120.     {
  121.         tab[i][j] = 0;
  122.     }
  123. }
  124.    
  125.  
  126. //macierz.StworzMacierz (w,k);
  127.  
  128. int wi;
  129. int ko;
  130. float value;
  131.  
  132. while (1) {
  133.  
  134. printf ("Wpisz dane do odpwoiedniej kolumny i wiersza \n");
  135. printf ("ktory wiersz? \n");
  136. scanf ("%d",&wi);
  137. printf ("ktora kolumna?\n");
  138. scanf ("%d",&ko);
  139. printf ("jaka wartosc wpisac? \n");
  140. scanf ("%f",&value);
  141.  
  142. macierz.Ustaw (wi, ko, value, tab);
  143.  
  144. printf ("Ktory element z tablicy chcesz wyswietlic:\n");
  145. printf ("ktory wiersz? \n");
  146. scanf ("%d",&wi);
  147. printf ("ktora kolumna?\n");
  148. scanf ("%d",&ko);
  149.  
  150. macierz.Pobierz (wi,ko, tab);
  151. }
  152.  
  153.     _getch();
  154.     return 0;
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement