Esercizi su arrays multidimensionali
Primo esercizio
Scrivere un programma che legge da tastiera due interi m ed n, alloca un array bidimensionale di double
di n righe ed m colonne e lo inizializza con numeri pseudocasuali compresi nell'intervallo [0, 1).
Aggiungere, una alla volta, le seguenti funzionaità:
- stampa la somma di tutti gli elementi della matrice;
- per ciascuna riga della matrice, stampa la somma dei suoi elementi;
- per ciascuna riga della matrice, stampa la media degli elementi (per questo punto si richiede, anche se non è indispensabile, di creare un array che memorizzerà la media di ciascuna riga);
- individua e stampa solo le righe la cui media è maggiore di 0.5;
- individua la posizione della riga la cui media è massima.
Secondo esercizio
Date due matrici A e B rispettivamente di dimensioni n×k
e k×m
, si definisce il prodotto righe per colonne di A e B la matrice C di dimensioni n×m
in cui l'elemento Ci,j è il prodotto scalare della i-esima riga di A e la j-esima colonna di B.
Un esempio di prodotto righe per colonne è il seguente:
1 3 0 4 1 1 15 5
2 2 1 0 x 2 0 = 6 2
3 3 1 1 0 0 11 4
2 1
Scrivere un programma che, date le dimensioni n
, k
e m
:
- alloca le due matrici di
int
A e B;
- le inizializza con numeri pseudocasuali compresi nell'intervallo [0, 10) (si consiglia inizialmente di inizializzare gli array con delle costanti);
- alloca la matrice prodotto C;
- calcola il prodotto righe per colonne di A e B, memorizzando il risultato nella matrice C;
- stampa le tre matrici A, B e C.