Unidad 3, Programacion Estructurada

Preview:

Citation preview

UNIDAD 3, PROGRAMACION ESTRUCTURADA

LSC. María Alejandra Sánchez Alva

Mtra. Verónica Perla Romero Fdz.

Programación EstructuradaEs una técnica de diseño que consiste en dividir la lógica de un programa en módulos jerárquicos.

Sus ventajas son:

• Simplificar el diseño del programa general

• La lógica del programa se comprende mejor

• Se pueden realizar cambios con facilidad

• Facilita la localización de errores

• Simplifican el mantenimiento de programas largos

• El código de los módulos puede ser reutilizado por otros programas

Clasificación de los subprogramas en VB

Procedimientos De evento Definidos por el usuario (Sub)

Funciones Predefinidas Definidas por el usuario (Function)

Esquema de módulos

Procedimiento de EventoSin uso de otros

Procedimientos no deEvento, ni funciones

El código es largo y difícil de darle mantenimiento

Y mucho más de entender

No estructurado

Procedimiento de Evento

Funciones predefinidas en VB

Funciones hechas por ti

Otros procedimientos no de evento hechas por ti

estructurado

Puedes reutilizar los procedimientos y funciones en otras aplicaciones.

3.1 Procedimientos Sub

La sintaxis es:

Private Sub NombreProcedimiento (Parámetros)

Declaración de variables

Instrucciones

End Sub

Instrucción para llamar a un Procedimiento

Call NombreProcedimiento (Argumento1, Argumento2, …)

Cuando no hay argumentos los paréntesis se omiten

Llamar a un procedimiento significa ejecutar su código

Las reglas son

El procedimiento Sub se escribe en una sección separada. Nunca dentro de un procedimiento de evento.

El Procedimiento Sub no puede contener la instrucción Call o llamada al o los procedimientos Sub.

Ejemplo de un procedimiento SubSe requiere realizar un procedimiento que realice las operaciones de suma, resta y multiplicación.

Sub opera (tipo as string, V1 as single, V2 as single)

Select case tipo

case “+”: msgbox (“La suma es: ”) & V1 + V2

case “-”: msgbox (“La resta es: “) & V1 - V2

case “*”:msgbox (“La multiplicación es: “) & V1 * V2

case else: msgbox (“Utilice el signo de +, - ó * para indicar la operación”)

End select

End Sub

Continuación

Private Sub Cmd1_Click ( )

Valor1=Inputbox(“de un número”)

Valor2=Inputbox(“de otro número”)

Tipo_operacion=Inputbox(“indique el tipo de operación +, -, ó * “)

Call Opera(Tipo_operacion, Valor1, Valor2)

End Sub

Una vez realizado el procedimiento vamos a ejecutarlo a través de un botón de comando, para ello debemos llamar al procedimiento que realizamos.

Paso de argumentos a parámetros

Envío de Argumentos

Call Opera (Tipo_operacion, Valor1, Valor2)

Recibo de Parámetros

Sub opera (tipo as string, V1 as single, V2 as single)

Se declaran las variables de acuerdo a lo que se recibe

Paso de argumentos a parámetros

Call Opera (“+”, X+2, Y*3)Expresión

Call Opera (Tipo_operacion, Valor1, Valor2)

Variable

Call Opera (“+”, 4, 2)Constante

EJEMPLOTIPO DE ARGUMENTO

Los procedimientos pueden recibir valores a través de los argumentos. Los parámetros del procedimiento toman el valor del argumento correspondiente, para ello es necesario declarar el tipo de la variable de acuerdo al dato que va a recibir.

Paso de variables por valor y por referencia

La forma de pasar variables a un procedimiento son:

Por valor: ByvalIndica que recibe una copia de la variable Por referencia: ByrefIndica que recibe a la variable

3.2 FuncionesUna función recibe cero o más valores de entrada, los procesa y regresa siempre un valor

=Val (“9.8”)9.8

Valor numérico de la cadenaVal (cadena)

=Len (“hola”)4

Longitud de la cadenaLen (cadena)

=Date ( )1/11/2007

La fechaMm/dd/aaaa

Date ()

=Abs (-2.5)2.5

Valor absoluto de xAbs (x)

=Sqr (4)2

La raíz de xSqr (x)

=Int (-3.74)-4

El entero menor a xInt (x)

EJEMPLOREGRESAFUNCIÓN

3.2 Otras Funciones

=Format(5000,”Currency”)$5,000.00

Cambia la forma de presentar el valor y no el valor en sí.

Format

=Trim(“ Hola”)Hola

Devuelve la cadena str sin espacios a la izquierda o a la drecha

Trim

=Ucase(“hola”)HOLA

Devuelve la cadena str convertida a mayúsculas

Ucase

=Right(“Hola mundo”,4)Undo

Devuelve los n caracteres a la derecha de la cadena str

Rigth

=Mid(“Hola mundo”6,5)mundo

Devuelve la subcadena de longitud n a partir del m carácter de la cadena str. Si no se indican n devuelve todos los caracteres a partir del carácter m

Mid

=Left(“Hola mundo”,4)Hola

Devuelve los “n” caracteres a la izquierda de la cadena indicada por str

Left

EJEMPLOREGRESAFUNCIÓN

Funciones creadas por el usuario

El formato o sintaxis del bloque de una función definida:

Private Function NombreFunción(var1 as tipo1,…)as tipodatoinstruccionesNombreFunción=valor_regresado

End Function

Ejemplo

Crear una función para resolver el área de un triángulo

Private Function area(a, as single, b as single) as single

area=(a*b)/2End Function

Implementación de la función en un cmd

Private Sub cmd1_Click ( )N1=inputbox(“de la altura”)N2=inputbox(“de la base”)Valor_regresado_funcion= area(N1,N2) Picture1.print Valor_regresado_funcion

End Sub

Bibliografía

Álvarez(2001). Computación 2, programación. México, Universidad Autónoma de Nuevo León. Publicaciones Cultural

Proyectos en pareja Realizar una librería de funciones para resolver

problemas de conversiones o indicar ladas telefónicas o indicar días festivos. (10 % semestral). Entregar descripción de la librería, código impreso y ejecutable.

Realizar una simulación de cajero automático (40 %) del tercer parcial. Entregar código, ejecutable e interfaces impresas. Permitir bloqueo a los tres errores de nip Cambio de nip Retiro de efectivo de 5 opciones Consulta de saldo impreso y pantalla según indique

usuario. Que se aprecie la programación estructurada

Fecha19-23 de nov

Fecha5-9 de nov

Entrega

Sugerencias para Librería

Medidas de longitud

1.6093 KilómetrosMillas Tierra

0.9144MetrosYardas

0.6214Millas TierraKilómetros

1.0936YardasMetros

0.3937PulgadasCentímetros

0.0394PulgadasMilímetros

Multiplica porA:Convertir

Sugerencias

Medidas de superficie

0.8381Metros 2Yardas 2

0.029Metros 2Piés 2

645.6Centímetros 2Pulgadas 2

1.196Yardas 2Metros 2

10.7639Piés 2Metros 2

0.155Pulgadas 2Centímetros 2

Multiplica porA:Convertir

Sugerencias

Ladas telefónicas

229Veracruz

246Tlaxcala

55México

222Puebla

998Cancún

612La Paz

LadaCiudad

Sugerencias

Día de la independencia

Batalla de Puebla

Día del trabajo

Nat. De Benito Juárez

La constitución

Reyes magos

Celebración

Días festivos

16 de Septiembre

5 de mayo

1 de mayo

21 de marzo

5 de febrero

6 de enero

Fecha

Cuestionario (10 %) del tercer parcial

1. ¿Qué es la programación estructurada?2. Ventajas de la programación estructurada3. Reglas de los procedimientos Sub4. Clasificación de los procedimientos y funciones en VB5. Diferencia entre procedimientos y funciones6. Diferencia entre byval y byref7. Llamada de un procedimiento y una función8. Paso de argumentos a parámetros9. 5 ejemplos de funciones predefinidas10. Implementa el procedimiento de la diapositiva No. 8

para permitir la división, valida para divisiones entre cero (marca mensaje de error).

Fecha de entrega 26-30 de nov.