Estructuras Repetitivas Ingreso y Salida de Datos
Temas:
• Instrucciones Iterativas: - Entrada Controlada: For - Next y Do While - Loop - Salida Controlada: Do - Loop Until
• Entrada y Salida de Datos: - Uso de Caja de Entrada (InputBox) - Cuadro de Diálogo (MsgBox)
Estructuras de control Iterativas o repetitivas. Son aquellas estructuras que nos permiten ejecutar un conjunto de instrucciones en forma repetitiva hasta que se cumpla una condición. Dependiendo donde se ubique la condición se dirá que son de: • Entrada Controlada
• Salida Controlada.
ó
Ciclo con contador implícito de entrada controlada. Sintaxis : FOR Contador = ValIni TO ValFin [STEP Inc] Bloque de instrucciones NEXT Contador • El bloque de instrucciones se ejecuta repetidas veces hasta que el Contador alcance el Valor Final.
• Contador es una variable numérica, cuyo valor inicial es ValIni, e incrementa su valor en uno cada vez que se ejecuta el bloque de instrucciones. • Cuando se desea que el incremento del contador sea diferente de uno se emplea el STEP, e Inc es el valor de incremento que sufre el Contador cada vez que se ejecuta el bloque de instrucciones.
Aplicación: Factorial de un Número Hacer un proyecto que permita hallar el factorial de un numero N. Ejm. 4! = 4 * 3 * 2 * 1 Nota: El numero N, es ingresado como dato.
Aplicación: Serie1 Hacer una aplicación que sirva para calcular el valor de la serie :
Suma = 1 + 1/2 + 1/3 + ... + 1/N Si se tiene como dato el valor de N.
Aplicación: Número perfecto Un entero positivo N, es un número perfecto si la suma de sus divisores menores que él es igual al mismo número. Hacer una aplicación que permita verificar si un número es perfecto o no.
Ej.:
6 es perfecto ( divisores 1,2,3) 28 es perfecto (1,2,4,7,14).
Ejemplo : Numero Primo Hacer una aplicación que permita determinar si un numero ingresado por teclado es o no primo
Ciclo con entrada controlada. Sintaxis : DO WHILE Condición Bloque de Instrucciones LOOP • El Bloque de Instrucciones se ejecuta mientras la Condición es VERDADERA • Cuando la Condición es FALSA se continua con la siguiente instrucción del programa.
Ciclo con salida controlada. Sintaxis : DO Bloque de Instrucciones LOOP UNTIL Condicion • El bloque de instrucciones se ejecutará hasta que se cumpla la Condición. • El bloque de instrucciones se ejecuta al menos una vez
Ingreso y Salida de Datos
InputBox MessageBox
Ingreso de Datos Cuando la cantidad de datos a ingresar es muy grande o no se sabe exactamente cuantos datos se van ha ingresar, el uso de la caja de texto (TextBox) resulta inadecuado.
Entonces se usa la caja de dialogo:
InputBox
Sintaxis: Dato = InputBox (Indicador, Título) Dato es una variable de tipo String Indicador, es el texto que el usuario ve en el cuadro de diálogo. Título, es el rótulo que aparece en la barra de título del cuadro de diálogo.
EJEMPLO:
Dim NOTA As Integer NOTA=Val(InputBox("INGRESE LA NOTA DEL ALUMNO ", "NOTAS"))
EJEMPLO • Elaborar un proyecto que permita ingresar las notas de N alumnos y que calcule y muestre el promedio de dichas notas.
• Indique además cual es el porcentaje de alumnos aprobados.
SALIDA DE DATOS Cuando la cantidad de datos a mostrar es muy grande o no se sabe exactamente cuantos son, el uso de etiquetas (Labels) resulta inadecuado
Entonces se usa la caja de diálogo:
MessageBox
EJEMPLO: Elaborar un proyecto que permita calcular el promedio de notas de N alumnos.
• Se ingresa para cada alumno las siguientes notas: Ex. Parcial,Tarea Académica y Examen Final • Mostrar el promedio final de cada alumno empleando una caja de diálogo MsgBox
Dim PROMEDIO As Single
MessageBox "EL
PROMEDIO ES " & PROMEDIO, , "NOTAS"
Otro tipo de uso del MessageBox: Dim Opc As String * 1
Do Bloque de Instrucciones
Opc=MessageBox(“Continua”,4+32,”Ejem plo”) Loop Until Opc=vbNo
EJERCICIOS PROPUESTOS
Ejercicio: Rebote Una pelota es lanzada desde una altura H, y en cada rebote recorre 2/3 de la altura anterior.
Desarrolle un proyecto que halle la distancia total recorrida por la pelota, hasta que la diferencia entre 2 rebotes sucesivos sea menor que 10 -5 .
Ejercicio: Cambio de base Escriba una aplicación que lea un número entero en base 10 y lo convierta a otra base entre 2 y 9. Se leen como datos : el número y la nueva base. Ejm:
número en base 10 : 162 nueva base :2 resultado : 10100010
Ejercicio: Serie2 Hacer una aplicación que permita calcular ex
ex = 1 + x + x 2 /2! +x 3 /3! + .... X n / n! Considere los n primeros términos de la serie, n es ingresado como dato.