1. Algo de codigo que les puede ayudar, yo use un botón que agrega números a un listbox (lbxNumeros)
no puedo compartirles el proyecto completo por que estoy utilizando librerías para los controles
Utilizo 2 funciones una para el promedio o otra para la desviación, la desviación utiliza el método
promedio() y trae el promedio
Les recomiendo que utilizen segmentos de código que enseño el profe asi como el diseño
Agregar numero al listbox
double numero = Convert.ToDouble(txtNumero.Text);
//agrega el numero a la lista (listbox)
lbxNumeros.Items.Add(numero.ToString());
Desviacion estandar
double desviacion = 0;
double promedio = 0;
double suma = 0;
double items = 0;
// obtiene la cantidad de numeros en la lista
items = lbxNumeros.Items.Count;
// obtiene el promedio de la función promedio()
promedio = calcularPromedio();
// recorre cada item (elemento) en la lista....
foreach (var item in lbxNumeros.Items)
{
/* 1.- Se realiza la resta
* 2.- Math.Pow eleva a la potencia el resultado de la resta
* 3.- El resultado se almacena en la variable suma
.... */
suma += Math.Pow((Convert.ToDouble(item.Text) - promedio),2);
}
// divicion y System.Math.Sqrt() realiza la raiz cuadrada
desviacion = System.Math.Sqrt((suma / (items-1)));
// trunca el numero a solo 2 decimales
return Math.Round(desviacion, 2);
2. Promedio
double promedio = 0;
double suma = 0;
int items = 0;
// obtiene la cantidad de numeros en la lista
items = lbxNumeros.Items.Count;
// por cada item (elemento) en la lista....
foreach (var Item in lbxNumeros.Items)
{
// se va sumando el numero a la variable suma
suma += Convert.ToDouble(Item.ToString());
}
if (suma > items)
{
// se promedia la suma entre la cantidad de items en la lista
promedio = suma / items;
}
return promedio;