Autor Nachricht
index_razor
BeitragVerfasst am: 02. Nov 2021 19:38    Titel:

Array hat Folgendes geschrieben:
Ok danke, hab das mal verbessert.


Davon ist aber nichts zu sehen. In der jetzigen Version fehlt nun außerdem jede einzelne Variablendeklaration. Bevor du einen Bezeichner wie "iSumme" verwendest, mußt du sagen welchen Typ er haben soll, z.B.

Code:
int iSumme = 0;


In der ursprünglichen Version hattest du das auch getan. Dasselbe gilt für die formalen Parameter in Funktionsdefinitionen. Die Zeile

Code:
int summe(iFeld[10]){


ergibt also nicht viel Sinn.
schnudl
BeitragVerfasst am: 02. Nov 2021 19:32    Titel:

Probier's mal so:

Ich erklär jetzt aber nicht alles einzeln...dir fehlen die Grundlagen noch fast komplett ...

Code:

#include <stdio.h>
#include <stdlib.h>


int summe(int iFeld[], int anzahl)
{
    int isumme = 0;
    for(int i=0; i<anzahl; i++)
    {
        isumme += iFeld[i];
    }
    return isumme;
}

float mittelwert(int iSumme, int anzahl)
{
    return iSumme/(float)anzahl;
}

int main()
{
    int iFeld[10] = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90};
    int iAnzahl = sizeof(iFeld)/sizeof(int);
   
    int iSumme = summe(iFeld, iAnzahl);
    printf("\nDie Summe aller Elemente im Array ist: %d", iSumme);
   
    float fMittelwert = mittelwert(iSumme, iAnzahl);
    printf("\n\nDer Mittelwert aller Elemente ist %.2f\n", fMittelwert);
   
    return 0;
}






Code:

Die Summe aller Elemente im Array ist: 450

Der Mittelwert aller Elemente ist 45.00
Array
BeitragVerfasst am: 02. Nov 2021 19:16    Titel:

Ok danke, hab das mal verbessert. Soll jetzt die Summe und den Mittelwert jeweils in Unterfunktionen berechnen lassen, aber ich bekomme 15(!) Fehlermeldungen und finde die Probleme einfach nicht...

Kann mir jemand sagen, wie ich meinen Code verbessern muss?

include <stdio.h>
#include <stdlib.h>



int summe(iFeld[10]){

for(i=0; i<10; i++)
{

iSumme += iFeld[i];

}

return iSumme;

}

float mittelwert(iSumme){


fMittelwert = iSumme / 10.0;

return fMittelwert;
}

int main(){



iSumme = summe(iFeld[10]);

printf("\nDie Summe aller Elemente im Array ist: %d", iSumme);

fMittelwert = mittelwert(iSumme);

printf("\n\nDer Mittelwert aller Elemente ist %.2f\n", fMittelwert);


return 0;

}
index_razor
BeitragVerfasst am: 02. Nov 2021 19:00    Titel:

Du hast vergessen iFeld zu initialisieren.
Array
BeitragVerfasst am: 02. Nov 2021 18:41    Titel: Array - Felder berechnen

Möchte ein beliebiges Array in C initialisieren mit 10 Feldern und daraus mittels einer For-Schleife die Summe berechnen. Doch mein Code liefert nur sehr hohe Zahlen und JEDES MAL ein Minus Zeichen davor... vlt kann sich den jemand mal anschauen?

#include <stdio.h>
#include <stdlib.h>

int main(){

int i;
int iSumme = 0;
int iFeld[10];


for(i=0; i<10; i++)
{

iSumme += iFeld[i];

}

printf("\nDie Summe aller Elemente im Array ist: %d", iSumme);

}

Powered by phpBB © 2001, 2005 phpBB Group