Somma delle singole righe o colonne di una matrice..
Salve a tutti, ho il seguente problema in programmazione C. Mi stavo esercitando in vista di un esame e mi sono imbattuto in questo esercizio:
letti in imput due numeri interi positivi n e m, generare una matrice A di numeri casuali compresi tra 7 e 31 con r righe ed m colonne. Verificare se esiste una riga della matrice la cui somma degli elementi sia uguale alla somma degli elementi di una colonna; in caso positivo stampare la riga e la colonna.
Per quanto riguarda la prima parte tutto ok, infatti ho creato due funzioni che ho chiamato cosi:
#define MAX 100
void genera_matrice(int A[MAX][MAX], int n, int m); /*in questa inserisco numero di righe e colonne e mi genera numeri*/
void stampa_matrice(int A[MAX][MAX], int n, int m);
Il mio problema è che non riesco a trovare un modo per poter sommare le singole righe e le singole colonne. Ho fatto tanti tentativi: il primo mi ha dato la somma di tutti gli elementi della matrice, il secondo invece non so quale somma mi abbia dato. Avevo pensato di utilizzare un ciclo for, qualcuno ha qualche suggerimento da dare??? grazie mille.....
letti in imput due numeri interi positivi n e m, generare una matrice A di numeri casuali compresi tra 7 e 31 con r righe ed m colonne. Verificare se esiste una riga della matrice la cui somma degli elementi sia uguale alla somma degli elementi di una colonna; in caso positivo stampare la riga e la colonna.
Per quanto riguarda la prima parte tutto ok, infatti ho creato due funzioni che ho chiamato cosi:
#define MAX 100
void genera_matrice(int A[MAX][MAX], int n, int m); /*in questa inserisco numero di righe e colonne e mi genera numeri*/
void stampa_matrice(int A[MAX][MAX], int n, int m);
Il mio problema è che non riesco a trovare un modo per poter sommare le singole righe e le singole colonne. Ho fatto tanti tentativi: il primo mi ha dato la somma di tutti gli elementi della matrice, il secondo invece non so quale somma mi abbia dato. Avevo pensato di utilizzare un ciclo for, qualcuno ha qualche suggerimento da dare??? grazie mille.....
Risposte
Mostra quello che hai cercato di fare. Calcolare la somma di una riga o colonna non è difficile, è infatti sufficiente fissare un indice e far variare solo l'altro quando si calcola la somma. Probabilmente dopo aver fatto questo hai poi sommato a loro volta i risultati. Il mio consiglio è quello di avere due array di lunghezza MAX e scrivere in uno le somme delle colonne e nell'altro le somme delle righe (è sufficiente scrivere nel valore dell'array che corrisponde all'indice fissato della colonna o della righa). A questo punto non rimane che verificare se esistono valori comuni nei due array.