Wie schreibt man eine Variable in ein Array

Hallo

Da ich noch ein echter Anfänger bin, schaffe ich es nicht eine Variable (Die Variable a)in ein Array zu schreiben, so dass ich von der Variabl den Durchschnitt rechnen kann.

Wie kann ich das a auf das a1 Array schrieben dass ich den Durchschnitt von jeweils 5 eingegangenen Werte bei a berechnen kann?

hier mein Beispiel:

void __fastcall TForm1::ComDataPacket1Packet(TObject *Sender,
const AnsiString Str)
{
int a = Str.ToInt();
int Ausgabe;
int a1[5];
for (int i = 0, total = 0; i Edit1->Text = Ausgabe;
}
//------------------------------------------------------------

Ich danke im Voraus vielmals…

Mit freundlichen Grüssen

Elvis

Hi Elvis

Mir ist noch nicht so ganz klar, was du da genau willst. Ich nehme an, das es um eine Funktion geht, die einen übergebenen Wert in einem Array abspeichern und einen Durchschnittswert zurückgeben soll.
Dafür brauchst du erst einmal eine globale, Klassen- oder unter C++ eine statische Variable (z.B. cnt), die dir die Anzahl der Eingaben mitteilt. Dann belegt du einfach dein (entweder auch statisches, oder globales) Feld a1[cnt] mit a.
Also:

#define MAX 5
int a1[MAX]; // globale Version

int Durchschnitt (int a)
{
static int cnt=0; // bleibt immer erhalten, auch nach Funktionsende
//static int a1[MAX] // statische Version
a1[cnt]= a; // Zuweisung auf das erste Element a1[0]
cnt++; // Anzahl der Eingaben jetzt 1
for (int i=0,total=0;i[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

du solltest, als anfaenger, besser die cpp grundlagen lernen und mit der konsole arbeiten, anstatt mit (unsauberem) borland gui-kram zu beginnen…

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi
Hei danke Norbert
Du hast mir schon ein bischen auf die Sprünge geholfen mit dem Statischen Variablen.
Mein Programm habe ich wie folgt programmiert:
***************************************************************

void __fastcall TForm1::ComDataPacket1Packet(TObject *Sender,
const AnsiString Str)
{
static int iCounter = 0; //statischer Counter
static int iBuffer = 0; //statischer Buffer
int Ausgabe = 0; // Ausgabe Varaiabl
iCounter++; // Counter aufzählen

if(5 == iCounter) //wenn counter 5 erreicht
{
Ausgabe = (iBuffer / 5) *19.53; //buffer durch 5 und multipl
this->Edit1->Text = Ausgabe; //ausgabe
// clean up
iCounter = 0; //counter und Buffer auf null
iBuffer = 0;
}
else //sonst
{
iBuffer += Str.ToInt(); //Str variabl umkonvertieren
//und in Buffer schreiben
}
}
*******************************************************************
ich hatte vieleicht meine frage nicht ganz richtig Formuliert, die AnsiSting variabl Str (somit auch das a) kann nicht beschrieben werden weil da die Werte direkt von einer elektronischen Messschaltung über die Com Schnittstelle eingelesen wird. Das ComDataPacket1Packet ist die TComPort einbinung.
Danke nochmals und sorry für das Späte zurückschreiben.

hei
der-mike, du warst mir ja die grösste hilfe! Danke für den Tip!
Gruss

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]