Tema Inv. Operaciones II Sesión 07

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

CAPITULO VII

Programación de simulación de sistemas industriales

Resolver el mismo problema del ejemplo 2 utilizando el modelo de regresión exponencial

BOTON PRONOSTICAR
Dim n, I, NS As Integer
Dim y(0 To 100), x(0 To 100) As Double
Dim v, des, r As Double
Dim logy(0 To 100), xlogy(0 To 100), x2(0 To 100), logy2(0 To 100), sumas(0 To
100), prono(0 To 100) As Double
Randomize()
Dim m, sx, sy, sxy, sx2, sy2 As Double
n = Val(Text1.Text)
m = Val(Text2.Text)
sx = 0 : sy = 0 : sxy = 0 : sx2 = 0 : sy2 = 0
Dim Log(0 To 100) As Double
Dim slogy, sxlogy, slogy2 As Double
For I = 1 To n
x(I) = I 'ingrese número de datos
y(I) = Val(InputBox("INGRESE DATOS HISTORICOS"))
sy = sy + y(I)
logy(I) = Log(y(I))
xlogy(I) = x(I) * logy(I)
x2(I) = x(I) * x(I)
logy2(I) = logy(I) * logy(I)
sxlogy = sxlogy + xlogy(I)
sx = sx + x(I)
slogy = slogy + logy(I)
sx2 = sx2 + x2(I)
slogy2 = slogy2 + logy2(I)
Next
Dim px, plogy, bpx, Exp(0 To 100), a, b, py As Double

px = sx / n : plogy = slogy / n
b = (n * sxlogy - sx * slogy) / (n * sx2 - sx ^ 2)
a = plogy - bpx
Text3.Text = Format(Exp(a), "###.000")
Text4.Text = Format(Exp(b), "###.000")
Text5.Text = Format(Exp(px), "###.000")
Text6.Text = Format(py, "###.000")
Text10.Text = Format(a, "###.000")
Text11.Text = Format(b, "###.000")
For I = 0 To n - 1
DGV1.Rows.Add(n)
Next
For I = 0 To n - 1
DGV1.Rows(I).Cells(0).Value = I + 1
DGV1.Rows(I).Cells(1).Value = Format(x(I), "###.0")
DGV1.Rows(I).Cells(2).Value = Format(y(I), "###.0")
DGV1.Rows(I).Cells(3).Value = Format(logy(I), "###.0")
DGV1.Rows(I).Cells(4).Value = Format(xlogy(I), "###.0")
DGV1.Rows(I).Cells(5).Value = Format(x2(I), "###.0")
DGV1.Rows(I).Cells(6).Value = Format(logy2(I), "###.0")
Next
Dim sv As Double
For I = 1 To n
sv = sv + (x(I) - px) ^ 2
Next

v = sv / n
des = v ^ (1 / 2)
r = (n * sxlogy - sx * slogy) / (Math.Sqrt(n * sx2 - sx ^ 2) * Math.Sqrt(n * slogy2 - slogy
^ 2))
Text7.Text = Format(Exp(v), "###,###.00")
Text8.Text = Format(Exp(des), "###,###.00")
Text9.Text = Format(Exp(r), "###.000")
For I = 0 To n - 1
DGV2.Rows.Add(n)
Next
For I = 0 To n - 1
DGV2.Rows(I).Cells(0).Value = I + 1
DGV2.Rows(I).Cells(1).Value = Format(sumas(I), "###.0")
Next

BOTON NUEVO
Dim k As Integer
k = DGV1.Rows.Count
For i = 0 To k
DGV1.Rows.Clear()
Next
Dim N As Integer
k = DGV2.Rows.Count
For i = 0 To N
DGV2.Rows.Clear()
Next
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text1.Focus()

BOTON SALIR
Me.Close()

You might also like