Adott nagyságú tömb adatainak beolvasása után számítsuk ki a tömb adatainak összegét és az átlagát. Az átlagot függvénnyel is oldjuk meg.
A feladat megoldása:
static double Összeg(double [] w)
{
int i;
double sz = 0;
for (i = 0; i < w.Length; i++ )
{
sz += w[i];
}
return sz;
}
static void Átlag(double [] w, out double átl)
{
int i;
átl = 0;
for (i = 0; i < w.Length; i++ )
{
átl+= w[i];
}
átl /= w.Length;
}
static double ÁtlagFg(double [] w)
{
return Összeg(w) / w.Length;
}
// globális változók
int db, i = 0;
double [] x;
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
db = Int32.Parse(textBox1.Text);
x = new double[db];
AdatOlvasás.Enabled = true;
button1.Enabled = false;
}
private void Form1_Load(object sender, EventArgs e)
{
listBox1.Items.Clear();
textBox2.Clear();
textBox2.Focus();
AdatOlvasás.Enabled = false;
Számítások.Enabled = false;
}
private void AdatOlvasás_Click(object sender, EventArgs e)
{
double adat;
string s;
if (textBox2.Text != "" )
{
adat = Double.Parse(textBox2.Text);
s = " " + i.ToString() + "\t" + adat.ToString();
listBox1.Items.Add(s);
x[i] = adat;
textBox2.Text = "";
i++;
if (i == db)
{
textBox2.Text = "Lista vége";
AdatOlvasás.Enabled = false;
Számítások.Enabled = true;
}
else
{
textBox2.Clear();
textBox2.Focus();
}
}
}
private void Számítások_Click(object sender, EventArgs e)
{
double átlag, átlagf, össz;
össz = Összeg(x);
Átlag(x, out átlag);
átlagf = ÁtlagFg(x);
textBox3.Text = össz.ToString();
textBox4.Text = átlag.ToString();
textBox5.Text = átlagf.ToString();
}
A program futási eredményei: