Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Historia de Visual 1 PDF
Historia de Visual 1 PDF
Francisco Ruiz
Manuel Ángel Serrano
Procedimientos
Declaración y código
• Sub
[Ámbito] Sub NombreProcedimiento[(
NombreProcedimiento[(ListaPar
ListaPará
ámetros)]
metros)]
[CódigoEjecutable]
digoEjecutable]
[Exit Sub | Return]
Return]
[CódigoEjecutable]
digoEjecutable]
End Sub
• Function
[Ámbito] Function NombreFunció
NombreFunción[(ListaPar
[(ListaPará
ámetros)]
metros)] As
TipoDato
[CódigoEjecutable]
digoEjecutable]
[Return Valor]
[NombreFunció
NombreFunción = Valor]
[Exit Function]
Function]
[CódigoEjecutable]
digoEjecutable]
End Function
Procedimientos
Paso de parámetros (ii)
• Paso por Referencia
Ambas variables utilizan la misma memoria.
Los cambios afectan a la variable del có
código llamador.
Procedimientos
Sobrecarga
• Varias versiones de un procedimiento (mismo nombre), pero con
listas de pará
parámetros diferenciadas en su nú
número, orden o tipo.
Overloads Sub Datos()
' có
código del procedimiento
' ............
End Sub
Overloads Sub Datos(ListaParametrosA)
Datos(ListaParametrosA)
' có
código del procedimiento
' ............
End Sub
Overloads Function Datos(ListaParametrosB)
Datos(ListaParametrosB) As
TipoDatoRetorno
' có
código del procedimiento
' ............
End Function
Estructuras de Control
Selección (i)
• If Simple
If Expresió
Expresión Then
Código
End If
If Expresió
Expresión Then Instrucció
Instrucción
• If Doble
If Expresió
Expresión Then
Código
Else
Código
End If
If Expresió
Expresión Then Instrucció
Instrucción1 Else Instrucció
Instrucción2
Estructuras de Control
Repetición (i)
• While ... End While
While Expresió
Expresión
Código
End While
Ámbito
Procedimientos
• Capacidad de poder llamar a un procedimiento desde
un punto dado del código.
Depende del nivel de acceso indicado en la declaració
declaración del
Sub/
Sub/Function:
Function:
Ámbito { Sub | Function } Nombre ([Pará
([Parámetros])
Public: Pú
Public: Público
Puede ser llamado desde cualquier mó
módulo del proyecto.
Private: Privado
Private:
Sólo puede ser llamado desde el mó
módulo en que se ha declarado.
Ámbito
Variables (ii)
Module A
Public V1 As String
Private V2 As Integer
V1
Public Sub Main()
Dim V3 As Char V3
V2
... ámbito de proyecto
End Sub ámbito de procedimiento
ámbito de módulo
Private Sub Proc1()
If V2>5 then
Dim V4 as string
V4
...
End If ámbito de bloque
End Sub
End Module
Module B
Public Sub Proc2()
...
End Sub
End Module
Manejo de Errores
• 2 conceptos relacionados
Error:
Error: Evento que se produce durante el funcionamiento de un
programa, provocando una interrupció
interrupción en su flujo de
ejecució
ejecución. Al producirse esta situació
situación, el error genera un
objeto excepció
excepción.
Excepció
Excepción: Un objeto generado por un error, que contiene
informació
información sobre las caracterí
características del error que se ha
producido.
• 2 técnicas de gestión de errores:
Estructurada:
Estructurada: mediante excepciones y una estructura de
control para detectar las excepciones producidas.
No estructurada:
estructurada: mediante detecció
detección y captura de errores y
saltos no estructurados (GO TO) en el có
código.
Manejo de Errores
Estructurado (ii)
• Clase Exception
Message:
Message: descripció
descripción del error.
Source:
Source: objeto/aplicació
objeto/aplicación que originó
originó el error.
StackTrace:
StackTrace: Ruta o traza del có
código donde se produjo el error.
ToString():
ToString(): Devuelve informació
información detallada en un string.
string.
• Captura
Try
x=x/y
Catch ex As OverFlowException When y=0
MsgBox(ex.
MsgBox(ex.toString
toString)
)
Catch ex As Exception
Console.Writeline(ex.Message)
Console.Writeline(ex.Message)
Console.Writeline(ex.Source)
Console.Writeline(ex.Source)
End Try
Práctica 1
Resolver ecuación 2do grado (i)
• Mostrar un formulario para preguntar los tres coeficientes de una
una
ecuació
ecuación de segundo grado:
A*x^2 + B*x + C = 0
Preguntar cada coeficiente en un control de tipo TextBox
• Añadir un botó
botón “Calcular”
Calcular” para obtener las soluciones invocando
al procedimiento de igual nombre.
Indicar si las soluciones son reales o imaginarias con un controlcontrol
CheckBox.
CheckBox.
Mostrar las 2 soluciones en un control etiqueta “Solució
Solución” con texto
azul si son reales y rojo si son imaginarias.
Ejemplo formato 2 soluciones reales: “2’45 y 78’
78’23”
23”
Ejemplo formato 1 solució
solución real: “-9’06”
06”
Ejemplo formato 2 soluciones imaginarias: “1’48+2’
48+2’1i y 0’
0’63-
63-1’86i”
86i”
• Añadir un botó
botón “Salir”
Salir” para acabar.