Salve, sto cercando di completare un codice contente delle matrici la cui funzione sta nel:
-caricamento
-stampa
-somma delle righe
-somma delle colonne
di una matrice.
Sono riuscito a completare tutte le parti, però dopo che esegue la stampa del contenuto inserito nelle matrici, e delle somme svolte, o notato che il risultato dato a riguardo della
somma delle colonne della matrice non è coretto. Qualcuno potrebbe darmi una mano a capire quale potrebbe essere il problema?
Grazie in anticipo
CODICE IN LINGUAGGIO C
-caricamento
-stampa
-somma delle righe
-somma delle colonne
di una matrice.
Sono riuscito a completare tutte le parti, però dopo che esegue la stampa del contenuto inserito nelle matrici, e delle somme svolte, o notato che il risultato dato a riguardo della
somma delle colonne della matrice non è coretto. Qualcuno potrebbe darmi una mano a capire quale potrebbe essere il problema?
Grazie in anticipo
CODICE IN LINGUAGGIO C
C:
#include <stdio.h>
#include <stdlib.h>
#define MAXR 10
#define MAXC 10
void Caricamento(int *nR, int *nC, int MAT[MAXR][MAXC]);
void Stampa(int nR, int nC, int MAT[MAXR][MAXC]);
void SommaR(int nR, int nC, int MAT[MAXR][MAXC]);
void SommaC(int nR, int nC, int MAT[MAXR][MAXC]);
int main()
{
int NR,NC,Mat[MAXR][MAXC];
Caricamento(&NR,&NC,Mat);
Stampa(NR,NC,Mat);
SommaR(NR,NC,Mat);
SommaC(NR,NC,Mat);
return 0;
}
void Caricamento(int *nR, int *nC, int MAT[MAXR][MAXC])
{
int i,j;
do
{
printf("Inserisci numero di righe:");
scanf("%d", nR);
if(*nR>10)
{
printf("ERRORE");
}
}while(*nR>10);
do
{
printf("Inserisci numero di colonne:");
scanf("%d", nC);
if(*nC>10)
{
printf("ERRORE");
}
}while(*nC>10);
for(i=0;i<*nR;i++)
{
for(j=0;j<*nC;j++)
{
printf("MATRICE(%d, %d) ",i, j);
scanf("%d", &MAT[I][j]);
}
}
}
void Stampa(int nR, int nC, int MAT[MAXR][MAXC])
{
int i,j;
for(i=0;i<nR;i++)
{
for(j=0;j<nC;j++)
{
printf("%d\t", MAT[I][j]);
}
printf("\n");
}
}
void SommaR(int nR, int nC, int MAT[MAXR][MAXC])
{
int VR[MAXR],i,j;
for(i=0;i<nR;i++)
{
VR[I]=0;
for(j=0;j<nC;j++)
{
VR[I]=VR[I]+MAT[I][j];
}
}
printf("SOMMA RIGHE:\n");
for(i=0;i<nR;i++)
{
printf("riga %d = %d\n",i+1, VR[I]);
}
}
void SommaC(int nR, int nC, int MAT[MAXR][MAXC])
{
int i,j,VC[MAXC];
for(i=0;i<nC;i++)
{
VC[I] = 0;
for(j=0;j<nC;j++)
{
for(i=0;i<nR;i++)
{
VC[j]=VC[j]+MAT[I][j];
}
}
}
printf("SOMMA DELLE COLONNE:\n");
for(i=0;i<nC;i++)
{
printf("colonna %d = %d\n",i+1,VC[I]);
}
}
Ultima modifica da un moderatore: