Untitled
unknown
plain_text
a year ago
1.8 kB
5
Indexable
/*
Scrivere un sottoprogramma che riceve come parametro un array bidimensionale di interi positivi o nulli dichiarato dal chiamante con DIMC colonne
e qualsiasi altro parametro ritenuto strettamente necessario. Il sottoprogramma visualizza le coordinate di tutte le posizioni per cui il valore è uguale
alla somma di tutti i vicini.
Esempio:
Se la matrice in ingresso è
1 *2 1 4 5
0 0 0 0 0
2 *9 0 3 1
1 5 1 1 *8
2 2 2 2 1
il sottoprogramma visualizza:
0 1
2 1
3 4
*/
#include <stdio.h>
#define DIMC 5
void trovaElementoSommaVicini(int matrice[][DIMC], int dimr)
{
for(int i=0; i<dimr; i++)
{
for(int j=0; j<DIMC; j++)
{
int sommaVicini=0;
if(i > 0)
{
sommaVicini+=matrice[i-1][j];
}
if(i < dimr-1)
{
sommaVicini+=matrice[i+1][j];
}
if(j>0)
{
sommaVicini+=matrice[i][j-1];
}
if(j<DIMC-1)
{
sommaVicini+=matrice[i][j+1];
}
if(i>0 && j>0)
{
sommaVicini+=matrice[i-1][j-1];
}
if(i>0 && j<DIMC-1)
{
sommaVicini+=matrice[i-1][j+1];
}
if(i<dimr-1 && j>0)
{
sommaVicini+=matrice[i+1][j-1];
}
if(i<dimr-1 && j<DIMC-1)
{
sommaVicini+=matrice[i+1][j+1];
}
if(matrice[i][j] == sommaVicini)
{
printf("%d %d\n", i, j);
}
}
}
}
int main() {
// Write C code here
printf("Try programiz.pro");
return 0;
}Editor is loading...
Leave a Comment