En el siguiente procedimiento haremos uso de la declaración FOR ... NEXT para calcular ciertas sumatorias.
Abra el archivo "Mis Macros.xlsm" grabado en la sesión anterior o haga clic
El procedimiento o macro que vamos a codificar deberá permitirnos calcular las sumatorias contenidas en la siguiente imagen, para compararlas cada una de ellas con su segundo miembro.
Observaciones:
Todas las sumatorias se ejecutan de de 1 a n.
Por lo que vamos a leer "n" que representará el número de iteraciones que realizaremos.
Vamos a codificar 4 procedimientos: Mimac04a, MiMac04b, MiMac04c y Mimac04d, todos dentro del mimo módulo.
El primero:
Digite Sub MiMac04a y presione [Intro]
Dentro de él, digitamos:
Dim s as Double
Dim x, n As Integer
n = val(InputBox("Número de iteraciones:"))
' Inicializamos a s en 0
s = 0
For x = 1 to n
s = s + x
Next
' Imprimimos el resultado de la suma
MsgBox("El valor de la suma es: " & s)
Ejecute la macro usando [F5] . Ingrese para n el valor 10000. El resultado que se obtrenga comprueba con una calculadora usando el segundo miembro de la ecuación.
El segundo:
Debajo del procedimiento anterior y fuera de él, digite: sub Mimac05b y presione [Intro]
Puesto que sólo cambia lo que se calcula, copie todo el procedimento anterior (sin la cabecera y el final) y pegue an este nuevo procedimiento:
En lugar de s = s + x debe digitar:
s = s + x*x
Ahora ejecute el procedimiento dando el valor de 10000 para n.
Proceda igual con la tercera sumatoria que debe constituirse en MiMac05c
La macro debe ser esta:
Sub MiMac05c()
Dim s As Double
Dim x, n As Integer
n = Val(InputBox("Número de iteraciones:"))
' Inicializamos a s en 0
s = 0
For x = 1 To n
s = s + x ^ 4
Next
' Imprimimos el resultado de la suma
MsgBox ("El valor de la suma es: " & s)
End Sub
Al ejecutarla digite para n el valor 100 para comprobar fácilmente.
Dejaremos la tercera sumatoria como ejercicio.
Ahora vamos ver cómo se calcularía la integral de f(x) = x*x*x desde 0 hasta 3.
Por debajo del último procedimiento, digite: MiMac05d y presione [Intro]
Primero calcularemos la sumatoria, como los casos anteriores.
Después del For ... Next, debemos multiplicar al resultado contenido en s, por 3/n (n ya tiene valor). Ese será el resultado de la integral
El procedimiento debe ser:
Sub MiMac05d()
Dim s As Double
Dim x, n As Integer
n = Val(InputBox("Número de iteraciones:"))
' Inicializamos a s en 0
s = 0
For x = 1 To n
s = s + (3 * x / n) ^ 3
Next
s = s * 3 / n
' Imprimimos el resultado de la suma
MsgBox ("El valor de la suma es: " & s)
End Sub
Al ejecutar el procedimiento digite el valor 10000 para n.
El resultado que se imprima debe ser muy próximo a 20.25 que es el resultado de la integral.
Grabe el libro con el mismo nombre y habilitado para macros.
En la siguiente sesión veremos una aplicación estadística usando FOR ... NEXT. Para ello haga clic aquí