Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- struct Arr2D {
- size_t noOfRows;
- size_t noOfCols;
- int* elems;
- };
- Arr2D* createArr2D(size_t nr, size_t nc, int e = 0); //1
- void deleteElems(Arr2D* parr); //2
- void setElem(Arr2D* parr, size_t r, size_t c, int e); //3
- int getElem(const Arr2D* parr, size_t r, size_t c); //4
- void infoArr2D(const Arr2D* parr, ostream& s = std::cout); //5
- Arr2D* transpose(const Arr2D* parr); //6
- int main() {
- createArr2D(5, 6, 0);
- system("pause");
- }
- Arr2D* createArr2D(size_t nr, size_t nc, int e) { //1
- int** tab = new int *[nr];
- Arr2D* test = new Arr2D{ nr, nc, *tab };
- for (int i = 0; i < nr;i++) {
- tab[i] = new int[nc];
- for (int j = 0;j < nc;j++)
- tab[i][j] = e;
- }
- for (int i = 0; i < nr;i++) {
- for (int j = 0;j < nc;j++)
- cout << tab[i][j] << " ";
- cout << endl;
- }
- return test;
- }
- void deleteElems(Arr2D* parr) { //2
- delete parr->elems;
- }
- void setElem(Arr2D* parr, size_t r, size_t c, int e) { //3
- parr->elems[r] = e;
- }
- int getElem(const Arr2D* parr, size_t r, size_t c) { //4
- return NULL;
- }
- //void infoArr2D(const Arr2D* parr, ostream& s = std::cout); //5
- Arr2D* transpose(const Arr2D* parr); //6
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement