# Durchschnitt Berechnen



## Crackmaster (17. Mai 2007)

Hi,

kann mir jemand sagen wie ich eine Funktion zum Berechnen
des Durchschnittes schreiben kann.

    Die Formal:         m = (a1 + ....... + a)/n

    Mein Versuch :    m (float zahl1, ....)
                              {
                                  m = (zahl1+ .....)/ anzahl der zahlen;
                                  return m;
                              }

Wie bekomme ich es hin das der benuzer dann auch so viele zahlen angeben kann wie er
will und der D. ttrotzdem richtig berechnet wird?


----------



## kle-ben (17. Mai 2007)

Hi, 
als erstes solltest du den benutzer fragen wieviel zahlen er eingeben 
will. Dann kannst du ein Array mit dem benötigten speicher anlegen.
Jetzt musst du nur noch die Zahlen einlesen und an ein deine Funktion 
übergeben. 

In der Funktion addierst du dann nur noch alle Werte in dem Feld auf 
und teilst durch die Länge des Feldes.

Soll es ein c oder ein C++ programm sein ?


Benny


----------



## Crackmaster (17. Mai 2007)

Ein C++ Programm, hast Du ein Beispie?l


----------



## bastionmancher (17. Mai 2007)

Hier ist ein Beispielprogramm:


```
#include<iostream>

using namespace std;

int main()
{
	cout<<"Aus wie vielen Zahlen wollen Sie den Mittelwert berechnen?"<<endl;
	int a;
	cin>>a;
	float summe=0;
	int c=1;
	for (int i=1; i<=a; i++)
	{
		cout<<"Bitte geben Sie Zahl "<<c++<<" ein: "<<flush;
		int b;
		cin>>b;
		summe+=b;
	}
	float mittelwert=summe/a;
	cout<<"Der Mittelwert Ihrer Zahlen ist "<<mittelwert<<endl;
}
```

ist allerdings nicht mithilfe eines Arrays, wie vorgeschlagen.
Gruß
bastionmancher


----------



## oysos (17. Mai 2007)

Ein Array müsste meines Wissens schon im Code eindeutig definiert sein, damit das Programm den benötigten Speicher anfordern kann.


```
// also
int Zahlen[50]

// und nicht
int i;
cin >> i;
int Zahlen[i];
```

Gruß
Oysos


----------



## bastionmancher (17. Mai 2007)

@oysos
Bei meiner Lösung werden einfach in einer Schleife alle eingegebenen Zahlen addiert und am Ende durch die Anzahl der Zahlen geteilt. Dadurch brauch man kein Array!

Gruß
bastionmancher


----------



## oysos (17. Mai 2007)

Ups, den Post hab ich irgendwie voll übersehen...  

Meine Antwort bezog sich auf kle-bens Post.

sry

Gruß
Oysos


----------

