Ich brauche einen Code, der den Durchschnitt in einem Array berechnen.Berechnung eines Durchschnitts in einem 2D-Array in C
Der Benutzer gibt die Größe und ein 2D-Array ein. Für jede Zahl in diesem 2D-Array sollte das Programm den Durchschnitt der Zahlen oben und links berechnen. Anschließend muss ein neues Array gedruckt werden, in dem die Durchschnittswerte gespeichert werden und nicht die Zahl, für die der Durchschnitt berechnet wurde.
für Beispiel- für größen- 3 und die Array-
1 2 3
4 5 6
7 8 9
wird das Ergebnis sein:
1 1.5 2
2.5 3 3.667
4 4.5 5
das, was ich bisher
int main()
{
int size, i = 0,j = 0,r=0,c=0;
double array[N][N] = {{0},{0}},sum[N][N]= {{0},{0}};
scanf("%d",&size);
for (i=0; i<size ;i++)
{
for (j=0; j<size ;j++)
{scanf("%lf",&array[i][j]);
}}
for (i=0;i<size;i++)
{ for(j=0;j<size;j++)
{
for(r = 0;r<i;r++)
{for (c = 0;c<j;c++)
sum[r][c] += array[i][j];
}
}
sum[r][c] =(sum[r][c])/((i+1)+(j+1));
}
for (r=0; r<size; r++){
for (c=0; c<size; c++)
printf("%.2f ",sum[r][c]);
printf("\n");
}
return 0;
}
Willkommen bei Stack-Überlauf! Es klingt, als müssten Sie lernen, wie Sie einen Debugger verwenden, um durch Ihren Code zu gehen. Mit einem guten Debugger können Sie Ihr Programm Zeile für Zeile ausführen und sehen, wo es von dem, was Sie erwarten, abweicht. Dies ist ein essentielles Werkzeug, wenn Sie programmieren wollen. Weiterführende Literatur: [Wie kleine Programme zu debuggen] (https://ericlippert.com/2014/03/05/how-to-debug-small-programs/). –
Auch '3.667' könnte im Beispiel falsch sein. Dies liegt daran, dass "(1 + 2 + 3 + 4 + 5 + 6)/6" 3,5 ist. Es sei denn, ich habe einen Fehler gemacht. – RoadRunner