Está en la página 1de 8

UNIVERSIDAD AUTONOMA DE COAHUILA FACULTAD DE SISTEMAS

HECTOR ADOLFO GARCIA VILLARREAL PROFESOR: OSCAR MESTA

GESTION DE APLICACIONES 1 MEDIA Y DESVIACION ESTANDAR

26 DE OCTUBRE 2012

TIEMPO ESTIMADO : 2 HORAS LINEAS DE CODIGO BUENO: 41 LINEAS DE COMENTARIOS: 8 LENGUAJE: VISUALBASIC.NET EL PROGRAMA HACE LO SIGUIENTE

Uso de PSP0, escribir un programa para calcular la media y la desviacin estndar de un conjunto de n nmeros reales. El programa puede leer los nmeros reales n desde el teclado, un archivo, o alguna otra fuente. Utilice una lista enlazada para almacenar los nmeros n para los clculos. Si es necesario, una matriz variable o esttica (s), base de datos, u otra estructura de datos (s) puede ser utilizado para contener los datos. Pruebe minuciosamente el programa.

PROGRAMA FUNCIONANDO

CODIGO DEL PROGRAMA

CODIGO EXPLICADO
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click With TextBox1 If IsNumeric(.Text) Then ListBox1.Items.Add(.Text) End If .Text = "" .Select() .Focus() End With End Sub

Las instrucciones pasadas pasa los valores del TexBox1 a ListBox1 y el Texbox 1 se queda vacio y se vuelve a poner el cursor ah.
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim i As Integer Dim nSumatorio As Double For i = 0 To ListBox1.Items.Count - 1 nSumatorio += ListBox1.Items(i) Next Dim nPromedio As Double nPromedio = nSumatorio / ListBox1.Items.Count Label1.Text = Math.Round(nPromedio, 2)

El for pasado lo que hace es sacar la sumatoria de todos los valores que se colocaron en el Listbox1 y se agrega a la variable nSumatorio. A la variable nPromedio es para ah sacar el promedio entre la variable nSumatorio y el numero de valores que estn en el listbox.

Dim nSum As Single For i = 0 To ListBox1.Items.Count - 1 nSum += (CSng(ListBox1.Items(i)) - nPromedio) ^ 2 Next Dim aVarianza As Double aVarianza = nSum / (ListBox1.Items.Count - 1) Label2.Text = Math.Round(aVarianza, 2)

Para el for anterior lo que se esta haciendo es la sumatoria nsum lo que hace es restar cada numero del listbox menos el promedio todo eso al cuadrado y suma cada una. Despues en la variable aVarianza la variable nsuma se divide entre el numero de nmeros en la lista menos 1. Y en el Lebel2.Text se pone aVarianza con solo dos decimales
Dim desviacion As Double desviacion = Math.Sqrt(aVarianza) Label3.Text = Math.Round(desviacion, 2) End Sub

En el cdigo anterior se le saca l raz cuadrada de la varianza y eso es la desviacin estndar.


Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click ListBox1.Items.Clear() Dim i As Integer For i = 0 To 9 Randomize() ListBox1.Items.Add(CInt(Int((200 * Rnd()) + 1))) Next End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click End End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click ListBox1.Items.Clear TextBox1.Clear() End Sub End Class