10 Tablice wielowymiarowe
Napisz funkcję
sumMatrix
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę o elementach typuint
o wymiarach \(n\times m\) i zwraca jako wartość sumę wartości elementów tablicy. Stwórz przypadek testowy dla funkcji.Napisz funkcję
sumArray
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\) i zwraca jako wartość sumę wartości elementów tablicy. Stwórz przypadek testowy dla funkcji.Napisz funkcję
maxRowIdx
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę o elementach typuint
o wymiarach \(n\times m\). Funkcja ma zwrócić indeks wiersza, w którym znajduje się największy element (w przypadku kilku możliwych indeksów, zwróć najmniejszy z możliwych). Stwórz przypadek testowy dla funkcji.Napisz funkcję
minColIdx
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma zwrócić indeks kolumny, w którym znajduje się najmniejszy element (w przypadku kilku możliwych indeksów, zwróć najmniejszy z możliwych). Stwórz przypadek testowy dla funkcji.Napisz funkcję
copyMat
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwie dwumiarowe tablice o elementach typuint
o wymiarach \(n\times m\). Funkcja ma przepisać zawartość drugiej tablicy do pierwszej tablicy. Stwórz przypadek testowy dla funkcji.Napisz funkcję
copyArr2D
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwie dwumiarowe tablice tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma przepisać zawartość drugiej tablicy do pierwszej tablicy. Stwórz przypadek testowy dla funkcji.Napisz funkcję
swapElems
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwie dwumiarowe tablice o elementach typuint
o wymiarach \(n\times m\). Funkcja ma zamienić odpowiednie elementy obu tablic między sobą. Stwórz przypadek testowy dla funkcji.Napisz funkcję
swapItems
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwie dwumiarowe tablice tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma zamienić odpowiednie elementy obu tablic między sobą. Stwórz przypadek testowy dla funkcji.Napisz funkcję
revRows
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę o elementach typuint
o wymiarach \(n\times m\). Funkcja ma odwrócić kolejność elementów w każdym wierszu. Stwórz przypadek testowy dla funkcji.Napisz funkcję
revRowArr
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma odwrócić kolejność elementów w każdym wierszu. Stwórz przypadek testowy dla funkcji.Napisz funkcję
revCols
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę o elementach typuint
o wymiarach \(n\times m\). Funkcja ma odwrócić kolejność elementów w każdej kolumnie. Stwórz przypadek testowy dla funkcji.Napisz funkcję
revColArr
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma odwrócić kolejność elementów w każdej kolumnie. Stwórz przypadek testowy dla funkcji.Napisz funkcję
transpose
, która dostaje jako argumenty dodatnią liczbę całkowitąn
i dwuwymiarową kwadratową tablicę o elementach typuint
o wymiarach \(n\times n\). Funkcja ma transponować elementy tablicy (zamienić wiersze na kolumny). Stwórz przypadek testowy dla funkcji.Napisz funkcję
transArr
, która dostaje jako argumenty dodatnią liczbę całkowitąn
i dwuwymiarową kwadratową tablicę tablic o elementach typuint
o wymiarach \(n\times n\). Funkcja ma transponować elementy tablicy (zamienić wiersze na kolumny). Stwórz przypadek testowy dla funkcji.Napisz funkcję
oddAvg
, której argumentem jest dwuwymiarowa tablica tablic (zawierająca zmienne typuint
) oraz jej wymiary \(n, n>1\) i \(m, m>1\). Funkcja ma zwrócić średnią elementów stojących na nieparzystych indeksach (oba mają być jednocześnie nieparzyste). Stwórz przypadek testowy.Napisz funkcję
evenSum
, której argumentem jest dwuwymiarowa tablica tablic (zawierająca zmienne typuint
) oraz jej wymiary \(n, n>1\) i \(m, m>1\). Funkcja powinna zwrócić sumę elementów stojących na parzystych indeksach (zarówno indeksy wierszy jak i kolumn są parzyste). Stwórz przypadek testowy.Napisz funkcję
swap2nd
, której argumentem jest dwuwymiarowa tablica tablic (zawierająca zmienne typuint
) oraz jej wymiary \(n\) i \(m\). Funkcja ma zamienić miejscami wiersz o indeksie 1 z przedostatnim. Jeśli tablica ma mniej niż cztery wiersze, funkcja ma nic nie robić. Stwórz przypadek testowy.
Przykład:
\[\left[\begin{array}{ccc} 2 & 3 & -3\\ 1 & 4 & 7 \\ -3 & -6 & 11 \\ -2 & 8 & 23\end{array}\right] \longrightarrow\left[\begin{array}{ccc} 2 & 3 & -3\\ -3 & -6 & 11 \\ 1 & 4 & 7 \\ -2 & 8 & 23\end{array}\right]\]
- Napisz funkcję
flipDiag
, której argumentami są dwie dodatnie liczby całkowite \(n\) i \(m\) oraz dwuwymiarowa tablica elementów (zawierająca zmienne typu int) wymiaru \(n\times m\). Funkcja ma zamienić kolejność elementów leżących na głównej przekątnej. Funkcja powinna działać tylko dla macierzy kwadratowych, w przeciwnym przypadku nie powinna nic robić. Stwórz przypadek testowy.
Przykład:
\[\left[\begin{array}{ccc} 2 & 3 & -3\\ 1 & 4 & 7 \\ -3 & -6 & 11 \end{array}\right] \longrightarrow\left[\begin{array}{ccc} 11& 3 & -3\\ 1 & 4 & 7 \\ -3 & -6 & 2 \end{array}\right]\]
Napisz funkcję
swapColumns
, która przyjmuje jako argumenty dwuwymiarową tablicę tablic liczb całkowitych, jej wymiary oraz dwa indeksy kolumn do zamiany miejscami. Funkcja powinna przestawić wskazane kolumny i zwrócić zmodyfikowaną tablicę. Uwzględnij sytuację, jeśli podane indeksy są nieprawidłowe - wtedy funkcja ma nic nie robić. Stwórz przypadek testowy dla funkcji.Napisz funkcję
revOddCol
, której argumentami są dwie dodatnie liczby całkowite \(n\) i \(m\) oraz dwuwymiarowa tablica elementów (zawierająca zmienne typu int) wymiaru \(n\times m\). Funkcja ma odwrócić kolejność elementów w kolumnach o nieparzystych indeksach. Stwórz przypadek testowy.
Przykład.
\[\left[\begin{array}{ccc} 2 & 3 & -3\\ 1 & 4 & 7 \\ -3 & -6 & 11 \\ -2 & 8 & 23\end{array}\right] \longrightarrow\left[\begin{array}{ccc} 2 & 8 & -3\\ 1 & -6 & 7 \\ -3 & 4 & 11 \\ -2 & 3 & 23\end{array}\right]\]
Stwórz funkcję
idxDiff
, której argumentem jest dwuwymiarowa kwadratowa tablica tablic (zawierająca elementy typuint
) oraz jej wymiar \(n, n>0\). Funkcja powinna zwracać różnicę między sumą indeksów najmniejszego a sumą indeksów największego elementu w tablicy. W przypadku kilku elementów o najmniejszej lub największej wartości, powinny to być najmniejsze możliwe sumy indeksów. Stwórz przypadek testowy.Napisz funkcję
sqEndCols
, której argumentem jest dwuwymiarowa tablica tablic (zawierająca zmienne typuint
) oraz jej wymiary \(n\) i \(m\) (\(n>0, m>1\)). Funkcja ma podnieść do kwadratu element z pierwszej i ostatniej kolumny. Stwórz przypadek testowy.
Przykład:
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & 5 & 8 \\ 9 & 8 & -2 \\ -2 & 3 & 4 \end{bmatrix} \longrightarrow \begin{bmatrix} 1 & 2 & 9\\ 0 & 5 & 64 \\ 81 & 8 & 4 \\ 4 & 3 & 16 \end{bmatrix}\]
Napisz funkcję
transCopy
, która dostaje jako argumenty dodatnią liczbę całkowitąn
i dwuwymiarową kwadratową tablicę tablic o elementach typuint
o wymiarach \(n\times n\). Funkcja ma zwrócić wskaźnik na nowo-utworzoną dynamiczną dwuwymiarową tablicę powstałą z przekazanego argumentu poprzez transponowanie jej elementów. Stwórz przypadek testowy dla funkcji.Napisz funkcję
newArrOneD
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma zwrócić wskaźnik nowo-utworzoną dynamiczną jednowymiarową tablicę powstało z argumentu poprzez przepisanie elementów kolejno wierszami. Stwórz przypadek testowy dla funkcji.Napisz funkcję
sortRows
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma posortować elementy osobno każdego wiersza od najmniejszego do największego. Stwórz przypadek testowy dla funkcji.
Przykład:
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & -5 & 8 \\ 9 & 8 & -2 \\ -3 & 5 & 4 \end{bmatrix} \longrightarrow \begin{bmatrix} 1 & 2 & 3\\ -5 & 0 & 8 \\ -2 & 8 & 9 \\ -3 & 4 & 5 \end{bmatrix}\]
- Napisz funkcję
sortCols
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma posortować elementy osobno każdej kolumny od największej do najmniejszej. Stwórz przypadek testowy dla funkcji.
Przykład:
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & -5 & 8 \\ 9 & 8 & -2 \\ -3 & 5 & 4 \end{bmatrix} \longrightarrow \begin{bmatrix} 9 & 8 & 8\\ 1 & 5 & 4 \\ 0 & 2 & 3 \\ -3 & -5 & -2 \end{bmatrix}\]
- Napisz funkcję
showRows
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma wyświetlić elementy tablicy w następujący sposób: elementy każdego wiersza mają być rozdzielone przecinkiem, a kolejne wiersze między osobą rozdzielone znakiem końca linii, na końcu każdej linii nie powinno być przecinka. Stwórz przypadek testowy dla funkcji.
Przykład: Dla tablicy
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & -5 & 8 \\ 9 & 8 & -2 \\ -3 & 5 & 4 \end{bmatrix}\]
ma być wyświetlone dokładnie:
1,2,3
0,-5,8
9,8,-2
-3,5,4
- Napisz funkcję
showCols
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma wyświetlić elementy tablicy w następujący sposób: elementy każdej kolumny mają być rozdzielone przecinkiem w jednej linii, a kolejne kolumny między osobą rozdzielone znakiem końca linii, na końcu każdej linii nie powinno być przecinka. Stwórz przypadek testowy dla funkcji.
Przykład: Dla tablicy
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & -5 & 8 \\ 9 & 8 & -2 \\ -3 & 5 & 4 \end{bmatrix}\]
ma być wyświetlone dokładnie:
1,0,9,-3
2,-5,8,5
3,8,-2,4
- Napisz funkcję
snkPrint
, która dostaje jako argumenty dwie dodatnie liczby całkowiten
im
oraz dwuwymiarową tablicę tablic o elementach typuint
o wymiarach \(n\times m\). Funkcja ma wyświetlić elementy tablicy w jednym wierszu rozdzielone spacją na zasadzie “ślimaka,węża” (spójrz na przykład). Stwórz przypadek testowy dla funkcji.
Przykład: Dla tablicy
\[\begin{bmatrix} 1 & 2 & 3\\ 0 & -5 & 8 \\ 9 & 8 & -2 \\ -3 & 5 & 4 \end{bmatrix}\]
ma być wyświetlone dokładnie:
1 2 3 8 -2 4 5 -3 9 0 -5 8