Professional Documents
Culture Documents
Estructura de un programa
en Visual Basic
1. Estructura básica
2. Ejemplos de aplicación
3. Elementos del lenguaje VB
1
Pasos para elaborar un
programa:
1. Entender el problema
2. Identificar las entradas y salidas (datos y
resultados)
3. Identificar las restricciones y relaciones
matemáticas
4. Establecer un algoritmo de solución.
Representar el algoritmo en un diagrama
de flujo (opcional) 2
Pasos para elaborar un
programa:
5. Implementar el algoritmo en un Lenguaje
de Programación (Programa)
6. Ejecutar el programa y depurar con base
en el análisis de los resultados
3
Ejemplo 1
Dadas las longitudes de tres segmentos
de recta, determinar si es posible formar
un triángulo con ellos.
a
b
c
6
CONSTRUCCIÓN DE ALGORITMOS
PROCESAMIENTO
Datos
ENTRADA capturados • Cálculos
• Relaciones lógicas
Variables,
Muestran,
constantes Graban,
Imprimen,
(DATOS) transmiten
Variables,
SALIDA constantes
(RESULTADOS)
7
Etapas del proceso
DATOS DE PROCESAMIENTO SALIDA
ENTRADA • Cálculos (resultados)
• Relaciones lógicas
9
Algoritmo
5. Si se cumplen las relaciones 2, 3 y 4
entonces los tres segmentos forman
triángulo y el área es:
abc
S
2
Área S ( S a)( S b)( S c)
Leer a,b,c
Fin
11
Etapas para elaborar el
proyecto en VB
Construir la interfaz gráfica:
Mecanismos de entrada de datos
Formularios,
Botón para llevar a cabo el proceso controles y
propiedades
Mecanismos para salida de resultados
Programación en lenguaje VB
12
Interfaz de usuario en etapa
de construcción
13
Código del programa
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim a , b , c As Integer
Dim mensaje As String
Dim Area , S As Single
a = Textbox1.Text
b = Textbox2.Text
c = Textbox3.Text
If (a < b + c And b < a + c And c < a + b) Then
mensaje = "Forman triángulo"
S=(a + b + c)/2
Area = ((S*(S-a)*(S-b)*(S-c))^(1/2)
Textbox5.Text = Area
Else
mensaje = "No forman triángulo"
End If
Textbox4.Text = mensaje
End Sub 14
End Class
Programa en ejecución
15
IDENTIFICADORES
Ejemplo: Nombre
Num_hrs
Calif2
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser
un simple carácter, tal como ‘b’, un valor entero tal como 35. El tipo de
dato determina la naturaleza del conjunto de valores que puede tomar
una variable.
17
Tipos primitivos
Tipo Bytes Rango de valores
18
Tipo Bytes Rango de valores
19
Tipos de Datos Simples
Datos Lógicos: Son aquellos que solo pueden tener dos valores (cierto
o falso) ya que representan el resultado de una comparación entre otros
datos (numéricos o alfanuméricos).
20
Constantes y Variables
Constante: Una constante es un dato numérico o alfanumérico que no
cambia durante la ejecución del programa.
Ejemplo:
PI = 3.1416
Variable: Es un espacio en la memoria del computador que permite
almacenar temporalmente un dato durante la ejecución de un
proceso, su contenido puede cambiar durante la ejecución del
programa. Para poder reconocer una variable en la memoria del
computador, es necesario darle un nombre con el cual podamos
identificarla dentro de un algoritmo.
Ejemplo:
area = PI * radio ^ 2
Las variables son : el radio, el área y la constate es PI
21
Declaración de variables en V. B.
Las variables se declaran (definen) con la
instrucción DIM Ejemplo:
Dim B As Integer
La cláusula As define el tipo de datos.
Tipos de datos, ejemplos:
Integer: Entero simple
Long: Entero largo
Single: Real Simple
Double: Real doble
Boolean: Lógico
String: Texto (alfanumérico)
22
Declaración de constantes en V. B.
23
Contadores: Se utilizan para llevar el control del numero de
ocasiones en que se realiza una operación o se cumple una
condición. Con los incrementos generalmente de uno en uno.
Ejemplo:
veces = veces + 1
Ejemplo:
suma = suma + b
24
Clasificación de las Variables
25
Por su Contenido
Ejemplo:
igv = 0.18 pi = 3.1416 costo = 2500
Variables Lógicas: Son aquellas que solo pueden tener dos valores
(cierto o falso) estos representan el resultado de una comparación
entre otros datos.
ok = 1 < 2 es_seguro = b > 3
Ejemplo:
letra = “a” apellido = “lopez” direccion = “Av. Libertad #190”
26
Por su Uso
Variables de Trabajo: Variables que reciben el resultado de una
operación matemática completa y que se usan normalmente dentro
de un programa.
Ejemplo:
resultado = a + b / c
Contadores: Se utilizan para llevar el control del numero de ocasiones
en que se realiza una operación o se cumple una condición. Con los
incrementos generalmente de uno en uno.
Ejemplo:
veces = veces + 1
Acumuladores: Forma que toma una variable y que sirve para llevar la
suma acumulativa de una serie de valores que se van leyendo o
calculando progresivamente.
Ejemplo:
suma = suma + b
27
Aplicaciones de
consola
Sentencias de Entrada/Salida
Una aplicación de consola es aquella que se
ejecuta dentro de una ventana de línea de
comandos. Este tipo de ventana recibe
diferentes denominaciones: Símbolo del sistema,
Sesión MS-DOS, Ventana de línea de comandos,
etc., por lo que en este capitulo nos referiremos
a ella de forma genérica como consola
28
Las aplicaciones de consola son muy
útiles cuando necesitamos realizar
pruebas que no impliquen el uso del
modo gráfico del sistema operativo:
formularios, controles, imágenes, etc., ya
que consumen menos recursos y su
ejecución es más veloz
29
Creación de un proyecto de
tipo aplicación de consola
Para crear una aplicación de consola
básica, después de iniciar el IDE de
VS.NET, y seleccionar el menú para crear
un nuevo proyecto, elegiremos Aplicación
de consola en el panel derecho de la
ventana Nuevo proyecto
30
31
32
Escritura de información
Para mostrar texto utilizaremos el método WriteLine( )
del objeto Console. Este método escribe en la línea actual
de la consola el valor que le pasemos como parámetro,
añadiendo automáticamente las marcas de retorno de
carro y nueva línea, por lo que la siguiente escritura se
realizará en una nueva línea.
Sub Main()
Console.WriteLine("Hola mundo desde la consola")
Console.WriteLine("Esta es otra línea nueva")
End Sub
33
El código fuente anterior tiene no obstante un
inconveniente: cuando el lector lo ejecute
observará que se muestra la consola con las
líneas de texto, pero inmediatamente vuelve a
cerrarse, no dejando apenas tiempo para ver su
contenido
Para remediar este problema, utilizaremos el
método ReadLine( ), que realiza una lectura de
los caracteres que vayamos introduciendo en la
línea actual de la consola, e impedirá continuar la
ejecución hasta que no pulsemos [INTRO].
34
Sub Main()
Console.WriteLine("Hola mundo desde la consola")
Console.WriteLine("Esta es otra línea nueva")
Console.ReadLine()
End Sub
35
Lectura de información
Para obtener el texto escrito por el usuario
en la línea actual de la consola y hasta la
pulsación de [INTRO] podemos utilizar el
método ReadLine( ) del objeto Console.
El Código fuente siguiente muestra como
volcamos a una variable el contenido de la
línea escrita por el usuario y posteriormente
exponemos su contenido, también a través
de la consola.
36
' declaramos una variable para volcar el contenido
' de una línea de la consola
Dim LineaTexto As String
Console.WriteLine("Introducir un texto")
LineaTexto = Console.ReadLine()
' el texto se pasa a la variable
' ahora mostramos lo que hemos escrito
Console.WriteLine()
Console.WriteLine("El usuario ha escrito la siguiente línea:")
Console.WriteLine(LineaTexto)
' aquí evitamos cerrar la consola,
Console.readline()
' así podemos ver mejor el resultado Console.ReadLine()
37
Entonces aplicando todo lo anterior podemos
obtener el siguiente ejemplo:
38
Ejercicio 1
Debido a los excelentes resultados, el restaurante
decide ampliar sus ofertas de acuerdo a la
siguiente escala de consumo. Determinar el
importe a pagar por lo consumido, mostrando
todos los importes
Consumo (S/.) Descuento(%)
Mayor a 100 30
Mayor a 60 20
Mayor a 30 15
Hasta 30 10
39
Pseudocodigo
Variables consumo, dscto, imp, tot : Real
Escribir("ingrese el consumo")
Leer consumo
Si consumo > 100 Entonces
dscto = 0.3 * consumo
Si no
Si consumo > 60 Entonces
dscto = 0.2 * consumo
Si no
Si consumo > 30 Entonces
dscto = 0.15 * consumo
Si no
dscto = 0.1 * consumo
Fin si
Fin si
Fin si
imp = (consumo - dscto) * 0.19
tot = consumo - dscto + imp
Escribir("El descuento es : " , dscto)
Escribir("El impuesto es : " , imp)
Escribir("Total a Pagar es : «, tot)
Fin
40
Module Module1
Sub Main()
Dim consumo, dscto, imp, tot As Double
Console.WriteLine("ingrese el consumo")
consumo = Console.ReadLine()
If consumo > 100 Then
dscto = 0.3 * consumo
ElseIf consumo > 60 Then
dscto = 0.2 * consumo
ElseIf consumo > 30 Then
dscto = 0.15 * consumo
Else
dscto = 0.1 * consumo
End If
imp = (consumo - dscto) * 0.19
tot = consumo - dscto + imp
Console.WriteLine("El descuento es : " & dscto)
Console.WriteLine("El impuesto es : " & imp)
Console.WriteLine("Total a Pagar es : " & tot)
Console.ReadLine()
End Sub
End Module
41
Ejercicio 2
Una institución benéfica tiene un comedor de niños y un centro
de salud. La institución recibe donaciones de diferentes países
que se reparte en la siguiente forma:
42
INICIO
dona
si no
dona<
10000
cent_salud,
com_niños,
bol_valores
FIN
43
Pseudocodigo
entero : donacion, cent_salud, com_niños, bol_valores
Inicio
escribir (“ ingrese donacion”)
leer ( donacion)
Si dona < 10000 entonces
cent_salud ← donacion * 0.35
com_niños ← donacion * 0.65
si no
cent_salud ← donacion * 0.30
com_niños ← donacion * 0.60
bol_valores ← donacion * 0.10
fin si
escribir ( cent_salud, com_niños, bol_valores )
fin
44
Ejercicio 3
En la playa de estacionamiento de un centro comercial cobran una tarifa fija
por hora o fracción de acuerdo a la siguiente tabla :
DÌA TARIFA
45
Ejercicio 4
En una universidad los alumnos están categorizados en cuatro tipos de
categorías, correspondiendo a cada categoría una pensión mensual
distinta a la siguiente tabla:
CATEGORIA PENSION
A S/. 550
B S/. 500
C S/. 460
D S/. 400
Semestralmente la universidad efectúa rebajas en las pensiones de sus
estudiantes a partir del segundo ciclo en base al promedio ponderado al
ciclo anterior en porcentajes dados en la tabla siguiente:
PROMEDIO DESCUENTO
0 a 13.99 No hay descuento
14.00 a 15.99 10%
16.00 a 17.99 12%
18.00 a 20.00 15%
Diseñe un diagrama de flujo que determine cuanto de rebaja recibirá un
estudiante sobre su pensión actual y a cuanto asciende su nueva pensión
47
48
PSEUDOCÓDIGO
cadena : categ
entero : pension
real : prom, dcto, nueva_pension
Inicio
escribir ( ‘ ingrese categoria y promedio de los alumnos’ )
leer ( categ , pension )
si categ = “A” entonces
pension ← 550
sino si categ = “B” entonces
pension ← 500
sino si categ = “C” entonces
pension ← 460
sino
pension ← 400
fin si
fin si
fin si
49
50
EJERCICIOS PROPUESTOS