Cine ma poate ajuta sa fac un program cu procedura sau functie intr-un tablou bidimensional, care sa calculeze suma elementelor pe fiecare rind, coloana....mersi anticipat)
Răspunsuri la întrebare
Răspuns de
1
void sumrowcol(int **v, int *sr, int *sc, int rows, int cols); //acceptă vectorul bidimensional ca prim argument, un vector unidimensional pentru a stoca suma pe fiecare rând (dimensiunea e numărul de coloane), un vector 1d pentru suma pe fiecare coloană (sc), numărul de rânduri și cel de coloane)
void sumrowcol(const int **v, int *sr, int *sc, const int rows, const int cols)
{
int i, j;
for (i=0; i<rows; i++)
{
sr[i]=0;
for (j=0; j<cols; j++) sr[i]=sr[i]+v[i][j];
}
for (j=0; j<cols; j++)
{
sc[j]=0;
for (i=0; i<rows; i++) sc[j]=sc[j]+v[i][j];
}
}
Exemplu de apelare: int v={{1,2},{3,4},{5,6}}, sr[3], sc[2]; sumrowcol(v,sr,sc,3,2);
sr va conține {3,6,9} și sc va conține {9,12}.
Faza cu „const”: E o bună practică ca la funcții să faci argumentele pe care nu le modifici constante.
void sumrowcol(const int **v, int *sr, int *sc, const int rows, const int cols)
{
int i, j;
for (i=0; i<rows; i++)
{
sr[i]=0;
for (j=0; j<cols; j++) sr[i]=sr[i]+v[i][j];
}
for (j=0; j<cols; j++)
{
sc[j]=0;
for (i=0; i<rows; i++) sc[j]=sc[j]+v[i][j];
}
}
Exemplu de apelare: int v={{1,2},{3,4},{5,6}}, sr[3], sc[2]; sumrowcol(v,sr,sc,3,2);
sr va conține {3,6,9} și sc va conține {9,12}.
Faza cu „const”: E o bună practică ca la funcții să faci argumentele pe care nu le modifici constante.
Alte întrebări interesante
Informatică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Geografie,
9 ani în urmă