program an do en visual basic estructuras

50
PROGRAMANDO EN VISUAL BASIC Aplicaciones computacionales Docente: Johanna Dueñas

Upload: fredydaniel6387

Post on 03-Jul-2015

386 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Program an Do en Visual Basic Estructuras

PROGRAMANDO EN VISUAL BASIC

Aplicaciones computacionalesDocente: Johanna Dueñas

Page 2: Program an Do en Visual Basic Estructuras

EVENTOS

AMBIENTE DE DESARROLLO

Son las acciones que se producen y que nos interesan identificar para establecer algún tipo de

respuesta por parte del objeto

Es un atributo nominal de un objeto de programación. Las propiedades

definen las características del objeto

Una descripción completa de un objeto, no se limita a sus propiedades,

debe comprender una definición de lo que hace.

PROPIEDADES

MÉTODOS

Page 3: Program an Do en Visual Basic Estructuras

Byte1 byte (0 a 255 )

Long 4 bytes

(-2147483648 a

2147483647)

Boolean2 bytes

True o False

Single 4 bytes

(-3.40E38 a

3.40E38)

Currency8 bytes

-9.22E14 a

9.22E14

Double 8 bytes

-1.80E308 a

1.80E308

Integer2 bytes

(-32768 a 32767 )

Date8 byes

1/1/100 a

31/12/9999

String 1Caracter/1 byte

(aprox. 65,500 Bytes Máx.)

VariantDepende del dato

(Determinado por el tipo)

TIPOS DE VARIABLES EN VISUAL BASIC

Page 4: Program an Do en Visual Basic Estructuras

Declaración implícita

DECLARACIÓN DE VARIABLES

Declaración explícita

Dentro de un procedimiento, no hace falta que se defina el

nombre y el tipo de una nueva variable. Si Visual Basic encuentra un nuevo nombre de

una variable, este la define automáticamente.

Se puede obligar a

definir las variables que se utilizan. Al definirlas, tanto se debe indicar un nombre

para la nueva variable, como el tipo de dato que se va a almacenar.

Option explicit

Page 5: Program an Do en Visual Basic Estructuras

DIM

PUBLIC PRIVATE

DECLARACIÓN DE VARIABLES

STATIC

Para declarar variables en Visual Basic, lo hacemos con la palabra reservada Dim(Public, Private o Static) seguida del nombre de la misma y luego el tipo:

Dim “nombre” as “tipo de variable”Ejemplo:

Dim ciudad as stringDim M As Integer, N As Integer

Page 6: Program an Do en Visual Basic Estructuras

El alcance de las variables se refiere al área del programa en las cuales es visible la variable; es decir, en que áreas del proyecto tendremos disponible las variables.

Las variables declaradas dentro de funciones o procedimientos, será de alcance local. Estas variables son reinicializadas cada ves que se ejecuta el procedimiento.

Las variables de nivel de formulario, estarán disponibles para todos los procedimientos del formulario.

Variables Publicas: se utilizan en todo el proyecto Cuando declaramos una variable como publica en un modulo de programa o en el formulario inicial, podremos utilizar esta variable en todo el proyecto:

EjemploPublic NoFactura as long

Variables Privadas: se utilizan sólo en el procedimiento Estas variables estarán disponibles solo dentro de nuestro formulario o procedimiento, según el lugar donde se haya declarado:

EjemploDim NoFactura as long

Variables Estáticas: No pierden su valor Con esta forma de declarar variables conseguiremos que las variables locales no se creen y se destruyan al entrar y salir de los procedimientos donde fueron declaradas sino que se mantenga su valor durante todo el periodo de ejecución de la aplicación.

ALCANCE DE LAS VARIABLES

Page 7: Program an Do en Visual Basic Estructuras

Resumen de Alcance de las Variables

 Alcance Declaración

Local Dim, Static (Dentro de un procedimiento)

Módulo Dim o Private (sección de declaraciones del módulo) Global Public (sección de declaraciones de un módulo)  A nivel del módulo, no hay diferencias entre Dim y private, pero se

aconseja utilizar private en contraste con Public

Page 8: Program an Do en Visual Basic Estructuras

Como su palabra lo dice es Información que no varía hace más fácil la comprensión del código y permite modificar un valor en un solo lugar no ocupa espacio extra, Ejemplo:

Const Mínimo = 1, Máximo = 10

LAS CONSTANTES

Definición de la constante sin indicar el tipo de dato:

Const [Nombre Constante] = [Valor Constante]

Definición de la constante indicando el tipo de dato:

Const [Nombre Constante] As [Tipo de dato] = [Valor Constante]

Page 9: Program an Do en Visual Basic Estructuras

Visual Basic nos proporciona varias funciones de conversión de datos, las cuales nos permiten convertir el valor de una variable al tipo de variable correcto. Esto es importante cuando trabajamos con datos Variant y queremos convertirlo a otro tipo de variable más exacta o para realizar validaciones en los datos.

  CBol(expresión) conversión a un valor tipo Boolean CByte(expresión) conversión a un valor tipo Byte CCur(expresión) conversión a un valor tipo Currency CDate(expresión) conversión a un valor tipo Date CDbl(expresión) conversión a un valor tipo Double CInt(expresión) conversión a un valor tipo Integer CLng(expresión) conversión a un valor tipo Long CSng(expresión) conversión a un valor tipo Single CStr(expresión) conversión a un valor tipo String CVar(expresión) conversión a un valor tipo Variant CErr(expresión) conversión a un valor tipo Error

CONVERSIONES

Page 10: Program an Do en Visual Basic Estructuras

La Función Inputbox()

E/S (Entradas y Salidas) Sencillas

El valor que devuelve la función es un valor tipo variant .

La función InputBox muestra un mensaje en un cuadro de diálogo, espera que el usuario escriba un texto o haga clic en un botón y devuelve un tipo String con el contenido del cuadro de texto.

Page 11: Program an Do en Visual Basic Estructuras

InputBox(Mensaje, titulo, Posx, Posy, ArchAyuda, Context)

La Función Inputbox()Mensaje: Consiste de más de una línea, asegúrese de incluir un retorno del carro chr(13) y un avance de línea, chr(10) entre cada línea. Puede usar la constante pre definida Vbcrlf para lograr el mismo efecto.

Titulo: Es una cadena que se despliega en la barra de titulo el cuadro de dialogo. Si se omite no aparecerá nada.

Posx, Posy: Expresiones numéricas que especifican el tamaño de la caja. Si se omite aparecerá en el centro.

ArchAyuda, Context: Se usan para proporcionar ayuda sensible al contexto.

Page 12: Program an Do en Visual Basic Estructuras

MsgBox() y MsgBox

E/S (Entradas y Salidas) Sencillas

Despliega un mensaje en un cuadro de dialogo y espera que el usuario seleccione un botón.

Page 13: Program an Do en Visual Basic Estructuras

MsgBox() y MsgBox

MsgBox(Mensaje, tipo, titulo, ArchAyuda, Context)

Mensaje: Es una expresión de cadena que se despliega como el mensaje en un cuadro de dialogo.

Titulo: Expresión de cadena que aparece en la barra de titulo del cuadro.

Page 14: Program an Do en Visual Basic Estructuras

MsgBox() y MsgBox

MsgBox(Mensaje, tipo, titulo, ArchAyuda, Context)

Valor Botón Constante

0 Ok(Aceptar) VbOKOnly

1 Ok(Cancelar) VbOKCancel

2 Abortar, Reiterar e Ignorar

VbAbortRetryIgnore

3 Si, No y Cancelar VbYesNoCancel

4 Si o No VbYesNo

5 Reiterar y Cancelar VbRetryCancel

16 Icono Parada Critica VbCritical

32 Signo de Interrogación VbQuestion

48 Signo de Exclamación VbExclamation

64 Icono de Información VbInformation

Tipo: Expresión numérica que es la suma de valores que especifican la cantidad y el tipo de botones por desplegar.

Page 15: Program an Do en Visual Basic Estructuras

SENTENCIAS CONDICIONALES O

ESTRUCTURAS DE DECISIÓN

Estas estructuras permiten tomar decisiones según las condiciones que se den en una aplicación.

Page 16: Program an Do en Visual Basic Estructuras

La estructura básica de esta instrucción es la siguiente:

Los corchetes muestran partes opcionales de la instrucción.

If...Then...End If

If (Condición) Then[Instrucciones Verdadero]Else[Instrucciones Falso]End If

Page 17: Program an Do en Visual Basic Estructuras

If...Then...End If

If (Condición) Then[Instrucciones Verdadero]Else[Instrucciones Falso]End If

[Instrucciones Verdadero]: Aquí pondremos la instrucción o instrucciones que se deberá realizar si la respuesta a la condición es Verdadera.

Condición: Aquí escribiremos la condición a evaluar, para que el ordenador nos devuelva una respuesta y según esta respuesta podamos actuar.

Page 18: Program an Do en Visual Basic Estructuras

If (Condición) Then[Instrucciones Verdadero]Else[Instrucciones Falso]End If

[Instrucciones Falso]: Aquí pondremos la instrucción o instrucciones que se deberá realizar si la respuesta a la condición no se cumple.

If...Then...End If

End If: Cierra la sentencia If

Else: Cuando la condición no se cumple la siguiente instrucción es “si no”.

Page 19: Program an Do en Visual Basic Estructuras

Ejemplo If...Then...End If

If Val(Edad.Text) < 18 ThenComentario.Caption = .Es menor de edad.ElseComentario.Caption = .Es mayor de edad.End If

Vamos a realizar una pequeña aplicación para que el ordenador nos diga, después de introducir la edad de una persona si es mayor de edad o no. Consideraremos la mayoría de edad a los 18 años.

Crear un Label y llamarlo=ComentarioCrear un TextBox y llamarlo= Edad

Page 20: Program an Do en Visual Basic Estructuras

Estructura If Then

If [Condición] Then[Instrucciones Verdadero]End If

If Val(Edad.Text) < 18 Then Comentario.Caption = .Es menor de edad.End If

Page 21: Program an Do en Visual Basic Estructuras

Imagina que lo que queremos ahora es que el ordenador nos devuelva, mirandola edad que introducimos, si es menor de 10 años, si tiene entre 10 y 20 años, si tieneentre 20 y 30 años o si es mayor de 30. Hasta este momento solo hemos visto lainstrucción If para poder controlar un caso como el que planteamos.

1 If Val(Edad.Text) < 10 Then2 Comentario.Caption = .Menos de 10 años.3 Else4 If Val(Edad.Text) < 20 Then5 Comentario.Caption = .Entre 10 y 20 años.6 Else7 If Val(Edad.Text) < 30 Then8 Comentario.Caption = .Entre 20 y 30 años.9 Else10 Comentario.Caption = .Más de 30 años.11 End If12 End If13 End If

Estructura If Then ElseIf

Page 22: Program an Do en Visual Basic Estructuras

Select Case

Select Case [Expresión para comparar]Case [Expresión 1][Instrucciones 1]...Case [Expresión n][Instrucciones n][Case Else][Instrucciones Else]End Select

La estructura básica de esta instrucción es la siguiente:

Page 23: Program an Do en Visual Basic Estructuras

Select Case

Select Case [Expresión para comparar]Case [Expresión 1][Instrucciones 1]...Case [Expresión n][Instrucciones n][Case Else][Instrucciones Else]End Select

En [Expresión para comparar] pondremos el objeto sobre el cual queremos preguntar por su valor.

En [Expresión 1] escribiremos cual es la pregunta que deseamos hacer sobre el valor escrito anteriormente.

En [Instrucciones 1] pondremos las instrucciones que se realizarán en caso de que [Expresión 1] sea verdadera.

Page 24: Program an Do en Visual Basic Estructuras

Select Case [Expresión para comparar]Case [Expresión 1][Instrucciones 1]...

Case [Expresión n][Instrucciones n][Case Else][Instrucciones Else]End Select

Select CaseSi queremos que se haga algo en caso que ninguna de las expresiones que hemos puesto anteriormente se cumpla, podemos escribir [Case Else] y seguidamente la o las instrucciones que se tienen que realizar.

No olvides, igual que en el caso del If, cerrar la expresión utilizando End Select

Page 25: Program an Do en Visual Basic Estructuras

Ejemplo Select Case

Select Case Val(Edad.Text)Case < 10Comentario.Caption = .Menos de 10

años.Case < 20Comentario.Caption = .Entre 10 y 20

años.Case < 30Comentario.Caption = .Entre 20 y 30

años.Case ElseComentario.Caption = .Más de 30 años.End Select

Page 26: Program an Do en Visual Basic Estructuras

Ejemplo Select Case

Select Case Val(Edad.Text)Case > 30Comentario.Caption = .Más de 30 años.Case > 20Comentario.Caption = .Entre 20 y 30 años.Case > 10Comentario.Caption = .Entre 10 y 20 años.Case ElseComentario.Caption = .Menos de 10 años.End Select

Page 27: Program an Do en Visual Basic Estructuras

Inserta un Label y ponle como nombreprecio.En dicho Label mostremos el precio del producto seleccionado.

Ejemplo Estructuras de decisiónEl siguiente ejercicio permite señalar el precio de un producto seleccionado con iva o sin él.

Crear un ListBox y llamarlo ListaObjetos con 5 nombres de diferentes objetos que puedas comprar encualquier tienda

Crear un Frame e insertar dos OptionButton.Activa uno de los dos OptionButton que has insertado anteriormente.

Los OptionButton tendrán por nombre ConIVA y como Caption: Con IVA.SinIVA y como Caption: Sin IVA.

Crear un botón y llamarlo MostrarPrecio y como Caption tendrá MostrarPrecio.

Controles a crear por el programador

Page 28: Program an Do en Visual Basic Estructuras

Private Sub MostrarPrecio_Click()Select Case ListaObjetos.ListIndexCase 0If SinIVA.Value = True ThenPrecio.Caption = 1000ElsePrecio.Caption = (1000 * 16 / 100) + 1000End IfCase 1If SinIVA.Value = True ThenPrecio.Caption = 2000ElsePrecio.Caption = (2000 * 16 / 100) + 2000End IfCase 2If SinIVA.Value = True ThenPrecio.Caption = 3000ElsePrecio.Caption = (3000 * 16 / 100) + 3000End If

Estructura Select Case

Estructura If Then Else

Nombre del procedimiento

Page 29: Program an Do en Visual Basic Estructuras

Case 3If SinIVA.Value = True ThenPrecio.Caption = 4000ElsePrecio.Caption = (4000 * 16 / 100) + 4000End IfCase 4If SinIVA.Value = True ThenPrecio.Caption = 5000ElsePrecio.Caption = (5000 * 16 / 100) + 5000End IfEnd SelectEnd Sub

Cierre estructura if

Cierre estructura Select

Cierre procedimiento

Page 30: Program an Do en Visual Basic Estructuras

Ejemplo Estructuras de decisiónPrivate Sub MostrarPrecio_Click()Select Case ListaObjetos.ListIndexCase 0Precios = 1000Case 1Precios = 2000Case 2Precios = 3000Case 3Precios = 4000Case 4Precios = 5000End SelectIf SinIVA.Value = True ThenPrecio.Caption = PreciosElsePrecio.Caption = Precios + (Precios * 16 /

100)End IfEnd Sub

Nombre del procedimiento

Estructura Select Case

Estructura If Then Else

Cierre estructura if

Cierre estructura Select

Cierre procedimiento

Page 31: Program an Do en Visual Basic Estructuras

ESTRUCTURAS DE REPETICIÓN O ITERACIÓN

Las estructuras de iteración son estructuras que ejecutan una o más veces un conjunto de sentencias (o una sentencia) un número determinado de veces, hasta que se cumpla una condición, mientras se cumpla una condición o hasta que se den ciertas circunstancias que obliguen a no ejecutar por más tiempo dichas instrucciones.

´Recordemos que las estructuras de selección ejecutaban un bloque de instrucciones determinado una vez o nunca, dependiento del cumplimiento de una condición previamente establecida.

Page 32: Program an Do en Visual Basic Estructuras

Ciclo For... NextEsta es una estructura de repetición o bucle, la cual depende de un contador

quenos controla el número de veces que se deberá repetir una o varias

instrucciones.En esta estructura siempre deberemos especificar la variable (contador), unvalor inicial y un valor final. Normalmente el contador incrementará de uno en

uno a no ser que nosotros indiquemos lo contrario.La estructura del bucle utilizando un contador es la siguiente:

For Contador = Inicio To Fin [Step Incremento][Instrucciones]Next Contador

Page 33: Program an Do en Visual Basic Estructuras

For... Next

Aquí es donde nosotros escribiremos el nombre de la variable que queremos utilizar como contador.

Valor inicial de la variable.

Valor final de la variable. Cuando la variable llegue a este valor, el bucle no se volverá a realizar.

For Contador = Inicio To Fin

Page 34: Program an Do en Visual Basic Estructuras

For... Next

For Contador = Inicio To Fin [Step Incremento]

Esta instrucción es opcional. Si no la ponemos el contador irá incrementando de uno en uno. Si especificamos un número detrás de Step hacemos que nuestro contador aumente un número determinado de pasos.

Número que marcará los pasos que debe aumentar el contador.

Este número puede ser tanto positivo como negativo.

Page 35: Program an Do en Visual Basic Estructuras

For Contador = Inicio To Fin [Step Incremento][Instrucciones]Next Contador

For... Next

Línea que indica que se termina el bucle y hace que aumente el contador según el valor que nos indique step en caso de tenerlo.

Aquí escribiremos la o las instrucciones que queremos que se repitan.

Page 36: Program an Do en Visual Basic Estructuras

Private sub Command1_click()For N=65 To 90Label1.Caption= Chr(N)Print Chr(N)Next NEnd Sub

Ejemplo For.......NextEste programa imprime en pantalla el valor en ascii

correspondiente a cada número entre 65 y 90 utilizando la función Chr.

Page 37: Program an Do en Visual Basic Estructuras

Ciclo Do – Until - Loop

El ciclo “DO-UNTIL-LOOP”, es utilizado con frecuencia cuando se necesita que se ejecuten ciertas instrucciones hasta que se cumpla una condición determinada, momento en el cual se sale del ciclo.

Es preciso tener en cuenta que primero se evalúa la condición y si se llega a cumplir no se entra al ciclo.

Page 38: Program an Do en Visual Basic Estructuras

Option ExplicitDim Dado1, Dado2 As IntegerPrivate Sub Command1_Click() Do Until Dado1 = 3 And Dado2 = 3 Dado1 = Int(6 * Rnd + 1) Dado2 = Int(6 * Rnd + 1) Print "Dado1: " & CStr(Dado1) & "Dado2: " &

CStr(Dado2) Loop Print "FIN DEL CICLO"End Sub

Ejemplo Do – Until - Loop

Page 39: Program an Do en Visual Basic Estructuras

Ciclo Do – Loop - Until

Esta estructura de iteración es similar a la estructura “DO – UNTIL - LOOP”, con la diferencia que primero se ejecuta el bloque de instrucciones(o la instrucción) y posteriormente se evalúa la condición. En caso de cumplirse la condición se sale del ciclo.

Page 40: Program an Do en Visual Basic Estructuras

Ejemplo Do – Loop - Until

Option ExplicitDim Dado1, Dado2 As IntegerPrivate Sub Command1_Click() Do Dado1 = Int(6 * Rnd + 1) Dado2 = Int(6 * Rnd + 1) Print "Dado1: " & CStr(Dado1) & "Dado2:

" & CStr(Dado2) Loop Until Dado1 = 3 And Dado2 = 3 Print "FIN DEL CICLO"End Sub

Page 41: Program an Do en Visual Basic Estructuras

Uso de Exit Do

Es interesante observar que no sólo es posible basarse en una condición para salir de un ciclo de iteración como el DO – WHILE, sino que también se puedes utilizar alguna condición de selección incorporada en el grupo de sentencias del ciclo, de tal suerte que cuando se cumpla, también se salga del ciclo de iteración.

Page 42: Program an Do en Visual Basic Estructuras

Ejemplo de Exit Do

Option ExplicitDim Dado1, Dado2 As IntegerPrivate Sub Command1_Click() Do Dado1 = Int(6 * Rnd + 1) Dado2 = Int(6 * Rnd + 1) If Dado1 = 2 And Dado2 = 4 Then Print "Dado1= " & CStr(Dado1) & "Dado2= " &

CStr(Dado2) Exit Do End If Print "Dado1: " & CStr(Dado1) & "Dado2: " & CStr(Dado2) Loop Until Dado1 = 2 And Dado2 = 4 Print "FIN DEL CICLO"End Sub

Page 43: Program an Do en Visual Basic Estructuras

Ciclo While………Wend

Un bucle es una sucesión repetitiva de instrucciones, que se están utilizando mientras se cumpla una condición o mientras no se cumpla una condición.

Mientras Condición

Instrucciones

Fin del bucle

Page 44: Program an Do en Visual Basic Estructuras

While Condición

Instrucciones

Wend

Ciclo While………Wend

Aquí escribiremos la o las instrucciones que queremos que se repitan.

Aquí escribiremos la condición mientras la cual queremos que se repitan las instrucciones.

Una vez se cumpla la condición finaliza el bucle.

Page 45: Program an Do en Visual Basic Estructuras

Ejemplo While………Wend

Private Sub Command1_Click() While i < 15

Print ii= i+1

WendEnd Sub

El siguiente programa imprime en pantalla los números de 1 hasta 14:

Page 46: Program an Do en Visual Basic Estructuras

Ciclo Do - While - Loop

En los casos anteriores, se usaba la palabra “UNTIL”, dentro de un ciclo “DO - LOOP”, pero como veremos a continuación también es posible decirle a visual Basic que repita una serie de instrucciones mientras se presente una determinada condición.

Page 47: Program an Do en Visual Basic Estructuras

Ejemplo Do - While - LoopDim variable As IntegerPrivate Sub Form_Load()

variable = 3Do While variable < 10

Print "Variable = " & CStr(variable)variable = variable + 1

LoopEnd Sub

Page 48: Program an Do en Visual Basic Estructuras

Ciclo Do - Loop - While

También es posible al igual que con el ejercicio de “DO – UNTIL – LOOP”, colocar la palabra “WHILE” al final del ciclo, de tal manera que el ciclo primero ejecute el bloque de instrucciones y posteriormente evalúe la condición.

Page 49: Program an Do en Visual Basic Estructuras

Ejemplo Do - Loop - WhileDim variable As IntegerPrivate Sub Form_Load()

variable = 3Do

Print "Variable = " & CStr(variable)variable = variable + 1

Loop While variable < 10End Sub

Page 50: Program an Do en Visual Basic Estructuras