+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MICROSOFT VISUAL BASIC.NET Visual Basic .NET (VB.NET) VB.NET) es un lenguaje de programación orientado a objetos. La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como expresaríamos las cosas en la vida real que otros tipos de programación. Cómo se piensa en objetos Pensar en términos de objetos es muy parecido a cómo lo haríamos en la vida real. Por ejemplo vamos a pensar en un coche para tratar de modelarlo en un esquema de POO. Coche Objeto Propiedades (Características) Color, modelo, etc. Métodos (Funcionalidad) Ponerse en marcha, parar, estacionar. Por poner otro ejemplo vamos a ver cómo modelar en un esquema POO una fracción. Objeto Fracción Propiedades Numerador y denominador. Métodos simplificar, sumar con otra fracción, restarse con otra fracción, etc. RESÚMEN: Se debe pensar las cosas por como son en realidad, la POO simplemente es modelar todo de tal forma que quede como en la vida cotidiana.
Los programas escritos en VB .NET requieren el Framework .NET (Proporciona (Proporciona todos los servicios para ejecutar las aplicaciones VB. NET)
FASES PARA LA RESOLUCIÓN DE UN PROBLEMA: 1. 2. 3. 4. 5. 6. 7. 8.
Análisis del problema Diseño del algoritmo Codificación Compilación y ejecución Verificación Depuración Mantenimiento Documentación
1. Análisis del problema: se tiene en cuenta todos los datos de entrada. Ejemplo: se debe conocer el problema que el cliente desea que nosotros lo resolvamos mediante un lenguaje de programación (LP). Ejemplo: Elaborar un programa que halle la suma de dos valores enteros 2+2=?
2. Diseño del algoritmo: Diríamos que un algoritmo es una serie de instrucciones que colocadas en un orden lógico conducen a la solución de un problema. Se debe hacer en una forma tan clara que cualquier otro programador pueda entenderlo.
TIPOS DE DIAGRAMACIÓN ALGORÍTMICA En general, hay varias formas de escribir un algoritmo, pero explicaremos dos de las técnicas más conocidas: Diagramas de Flujo (DFD) y Pseudocodificación . Diagrama de flujo de Datos (DFD): Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos conectados con flechas para indicar la secuencia de instrucciones. Inicio o fin Lectura de datos
Proceso de asignación
Escribir, mostrar o imprimir Línea de flujo
Decisión
PSEUDOCODIGO: En el pseudocódigo, cada instrucción es una línea y las operaciones elementales se escriben de una forma tan clara que será imposible que algún programador no las entienda. Aquí utilizaremos un pseudocódigo un poco personalizado, para hacer más sencilla la explicación. Para realizar dichas instrucciones, se utilizan básicamente Variables y Operadores. EJEMPLO: Hacer un programa que me muestre la suma de dos valores.
3. Codificación: Basados en el algoritmo se traduce el algoritmo a un LP. Imports System.Console Module Module1 Dim valor1, valor2, suma As Integer Sub Main() Write("Ingrese valor Numero 1: ") valor1 = ReadLine() Write("Ingrese valor Numero 2: ") valor2 = ReadLine() suma = valor1 + valor2 WriteLine("La suma de ambos valores es : " & suma) ReadLine() End Sub End Module 4. Compilación e ejecución: se procede a ejecutar el programa para verificar si está correcto o no.
5. Depuración: Es la finalización de la solución del problema. 6. Mantenimiento: Las correcciones y/o modificaciones durante la vida del software. 7. Documentación: Es la elaboración del manual de uso del sistema. EJERCICIO DE DFD: 1. Elaborar un algoritmo en DFD y Pseudocódigo para hallar el tipo de cambio de soles a dólares. Inicio Dólares D, Soles S, Cambio C Leer D C 2.80 S= D *C Mostar S Fin
2. Elaborar un algoritmo que me calcule el promedio de tres notas y me muestre APROBADO si su promedio es mayor que 10.5 caso contrario me muestre DESAPROBADO.
VARIABLES En general, las variables son espacios que se reservan o separan en la memoria para almacenar cualquier tipo de información (números, letras, frases, etc.), las variables pueden tener cualquier nombre pero preferiblemente deben ser mnemotécnico, es decir, que tenga relación con él o los datos que se almacenarán en la variable. AQUÍ ALGUNAS REGLAS: 1. No pueden comenzar con números. 2. No pueden contener símbolos u operadores en ninguna posición del nombre, excepto el carácter “_”.
3. No pueden contener espacios. Ejemplos: Num1 , Num,2 Suma Sum Soles S
CONSTANTES Las constantes tienen un valor fijo (su contenido nunca cambia), se le da cuando se define la constante y que ya no puede ser modificado durante la ejecución de cualquier programa. Ejemplos: Cambio= 2.80 Num1= 20 Num2= 10
OPERADORES ARITMÉTICOS Nos permiten realizar operaciones numéricas con nuestras variables. + : Suma - : Resta * : Multiplicación / : División % : Devuelve el residuo de la división ^ : Potenciación Ejemplo: RES = NUM1 + NUM2 OPERADORES DE COMPARACIÓN Se utilizan principalmente en nuestras condiciones para comparar dos variables y verificar si cumple o no la propiedad del operador, este retornara un valor lógico como Verdadero o Falso. = : igualdad <> : Diferente < : Menor <= : Menor igual que > : Mayor >= : Mayor igual que
Donde la operación Lógica (NOTA >= 10.5) ,nos dará sólo un resultado (VERDADERO o FALSO).
OPERADORES LÓGICO Se usan en combinación con los operadores de comparación cuando la expresión de la condición lo requiere. AND : Y OR : O NOT : No
DISEÑO DE FORMULAS Las operaciones en un computador tienen un cierto orden de importancia, es decir, algunas se efectúan primero que otras. División, multiplicación, suma y resta. Si no se coloca ningún paréntesis en la operación aritmética, el orden anterior es el que tiene la máquina para realizar las operaciones, pero al colocar algo entre paréntesis, esa parte de operación primará sobre las demás. 1. 5 x 2 + 6 = Se desglosa de la siguiente manera:( (5 * 2) + 6 ) 2. 8 + 5 – 3 + 5 * 2 = Se desglosa de la siguiente manera: (8+5) - (3+(5*2))
3.
= Se desglosa de la siguiente manera:( (5 * 2) / 2 )
4.
= Se desglosa así: (6/2) + (((5*2) + (3*2)) /2)
5.
= Se desglosa así:((2 * 3)+(6/2) )+( (8+2)/2)
En lo sucesivo veremos más ejemplos de cómo desglosar una fórmula matemática y ejecutarla en forma lineal de una manera entendible para los algoritmos. CONTADORES Un contador es aquel que permite incrementar el valor de una variable numérica, de uno en uno, de dos en dos, etc. (esto se aplica también de forma negativa) EJEMPLO: CONT = CONT + 1 (Si esto se utiliza dentro de un bucle y/o estructura repetitiva, incrementará la variable CONT de uno en uno).
ACUMULADORES Un acumulador es una variable que almacena o cuenta con cierta información y la incrementa dependiendo de las variables que contengan. EJEMPLO: ACUM = ACUM + CONT Esto sumara el proceso de la variable ACUM + CONT y la guardara en la variable ACUM)
ESTRUCTURA SECUENCIAL La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso. En Pseudocódigo es la siguiente:
En diagrama ó DFD se así:
Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmos representados en Pseudocódigo y en diagramas de flujos: • Tengo un teléfono y necesito llamar a alguien pero no sé cómo hacerlo.
Pseudocódigo
INICIO:
persona FIN
Levante la bocina Espere tono Marque el número Espere que contesten Hable con la otra Cuelgue la bocina
Diagrama de Flujo
ESTRUCTURA CONDICIONAL Una instrucción condicional es aquella que nos permite "preguntar" sobre el entorno que nos rodea, pudiendo así actuar según la respuesta obtenida. Estas respuestas siempre serán Verdadero o Falso, pudiendo así tomar, en un principio, dos caminos diferentes. La estructura de decisión es simplemente una instrucción que evalúa una expresión lógica, que solo en el caso de resultar verdadera permite ejecutar una serie de instrucciones. La palabra SI NO (ELSE) se coloca cuando se desea que otro grupo de instrucciones se ejecuten en caso de que la expresión lógica sea FALSA. PSEUDOCÓDIGO
DFD
SI < Expresión Lógica > ENTONCES < instrucciones > SI NO < instrucciones > FIN SI Veamos algunos ejemplos tanto de Pseudocodigos como Diagramas de flujo. EJEMPLO 1: Elaborar un algoritmo que me muestre la palabra "ERES INTELIGENTE" si pulso la tecla Y. PSEUDOCÓDIGO
DFD
EJEMPLO 2: Elaborar un algoritmo que me muestre el mayor de dos números ingresados por teclado. PSEUDOCÓDIGO
DFD
APLICACIONES DE CONSOLA Import System.Console El uso de Imports lo que hace es indicarle al compilador dónde buscar la definición de los tipos que estamos usando en nuestro código, para así ahorrarnos la escritura de los espacios de nombres que habitualmente usamos, de esa forma podemos acortar el código que tenemos que escribir. Por Ejemplo: queremos mostrar por pantalla la palabra “HOLA MUNDO” Imports System.Console Module Module1 Sub Main() Console.WriteLine("HOLA MUNDO") Console.ReadLine() End Sub End Module
TIPOS DE DATOS Los tipos de datos son los valores que se les asignan a las variables, estas deben de concordar según la lógica de nuestro algoritmo y/o programa. EJEMPLO: Si deseamos crear una variable que nos almacene el promedio de una nota, este sería de tipo Decimal. Dim PROM As Decimal Dim = Ambito PROM = Nombre de la variable As Decimal = El tipo de Dato asignado Tipo de Visual Basic: Boolean = True o False Byte = 1 byte : 0 a 255 (sin signo) Char = 2 bytes : 0 a 65535 (sin signo) Date = 8 bytes : 0:00:00 (medianoche) del 1 de enero de 0001 Decimal = 16 bytes : 0 a +/-79.228.162.514.264.337.593.543.950.335 Double = 8 bytes : -1,79769313486231570E+308 a Integer = 4 bytes : -2.147.483.648 a 2.147.483.647 (con signo) Long = 8 bytes : -9.223.372.036.854.775.808 a Object = 4 bytes SByte = 1 byte : -128 a 127 (con signo) Short = 2 bytes : -32.768 a 32.767 (con signo)
Single = 4 bytes : -3,4028235E+38 a -1,401298E-45 † para los String = 0 a 2.000 millones de caracteres Unicode aprox. UInteger = 4 bytes : 0 a 4.294.967.295 (sin signo) ULong = 8 bytes : 0 a 18.446.744.073.709.551.615 User-Defined UShort = 2 bytes : 0 a 65.535 (sin signo)
Método WriteLine() Este método usaremos para mostrar algún texto o valor en la pantalla de la consola. El parámetro que recibe el método puede ser de varios tipos, ya sea una cadena de caracteres, un número entero, una línea en blanco, etc...
CASO 1: Si lo que deseamos es mostrar algún mensaje, ejemplo la palabra “Bienvenido a mi Blog”, el código completo seria el siguiente: Imports System.Console Module Module1 Sub Main() WriteLine("Bienvenido a mi Blog") ReadLine() End Sub End Module NOTA: Todo mensaje va entre “ ”. CASO 2: Si lo que deseamos es mostrar algún valor que contenga alguna de nuestras variables el código completo seria el siguiente:
Imports System.Console Module Module1 Dim num As Integer = 15 Sub Main() WriteLine(num) ReadLine() End Sub End Module NOTA: cómo podemos observar las variables que contienen algun valor NO VAN ENTRE “ ”. CASO 3: Ahora si lo que queremos mostrar es un mensaje y valor a su vez el código completo seria el siguiente: Imports System.Console Module Module1 Dim valor1, valor2, suma As Integer Sub Main() valor1 = 15 valor2 = 20 suma = valor1 + valor2 WriteLine("La suma de ambos valores es : " & suma) ReadLine() End Sub End Module NOTA: es simbolo de aspersan (&) permite concadenar grupos de valores. DIFERENCIA ENTRE WRITELINE Y WRITE WRITELINE: Al final de la instrucción usted puede ver un LINE (WriteLINE), lo que indica que una vez mostrado el mensaje el pront saltara a la siguiente línea WRITE: En este caso la instrucción no contiene LINE, por lo tanto una vez mostrado el mensaje o valor el pronto continuara en la misma linea de estado.
PRONT: Se llama pront al indicador o rayita parpadeante que muestra la pantalla en consola.
Método ReadLine() Este método permite almacenar en variables la información que se ingresa por teclado. Para ello tenemos que hacer uso de una buena declaración de dichas variables para que no muestre mensajes de error en su almacenamiento, Ver tipo de datos.
EJEMPLO: Ingresaremos dos valores por teclado y mostraremos la suma de ellos Imports System.Console Module Module1 Dim valor1, valor2, suma As Integer Sub Main() Write("Ingrese valor Numero 1: ") valor1 = ReadLine() Write("Ingrese valor Numero 2: ") valor2 = ReadLine() suma = valor1 + valor2 WriteLine("La suma de ambos valores es : " & suma) ReadLine() End Sub End Module Como podemos observar READLINE va antes de la variable donde se guardara la información, de esta manera cuando estemos en modo ejecución y la compilación llegue a esa línea de código, este se detendrá hasta que hallamos ingresado dicho valor, luego de pulsar la tecla Enter, el sistema leerá el dato y continuara con las siguientes líneas de código.
NOTA: Si observamos al final de casi todos los programas va un Readline(), este se inserta en los códigos de tal manera que luego de haber ejecutado nuestro programa este haga una pausa de pantalla para poder ver los resultados de nuestra compilación, luego al pulsar cualquier tecla nuestro programa acabara y regresara a la pantalla de código.
EJERCICOS: EJERCICIOS - SECUENCIALES 01.
DFD: Hacer un programa que muestre el promedio de 3 notas.
Imports System.Console Module Module1 Dim RESUL As Integer Dim N1, N2, N3 As Integer Sub Main() Write("Ingrese valor Numero 1: ") N1 = ReadLine() Write("Ingrese valor Numero 1: ") N2 = ReadLine() Write("Ingrese valor Numero 1: ") N3 = ReadLine() RESUL = ((N1 + N2 + N3) / 3) WriteLine() WriteLine("==============================") WriteLine("El promedio de las 3 notas es :" & RESUL) ReadLine() End Sub End Module
02.
DFD: Hacer un programa que lea un número de 2 cifras y sume sus elementos.
03. DFD: Elabore un programa que lea 2 números enteros positivos y que muestre la suma y la multiplicación de estos.
04. DFD: Una persona recibe un préstamo de $100.00 de un banco y desea saber cuánto pagará de interés, si el banco le cobra una tasa del 2% mensual.
05. DFD: Calcula el precio de un boleto de viaje, tomando en cuenta el número de kilómetros que se van a recorrer, siendo el precio S/.10.00 por Km.
06. DFD: Calcular el monto a pagar en una cabina de Internet si el costo por hora es de S/.1.00 y por cada 5 horas te dan una hora de promoción gratis.
07. DFD: Calcular el cambio de monedas en dólares y euros al ingresar cierta cantidad en soles. (tipo de cambio soles: 3.20, Euros: 4.10).
08. DFD: Calcular el descuento y el monto a pagar por un medicamento cualquiera en una farmacia si todos los medicamentos tienen un descuento del 35%.
09. DFD: Calcular el nuevo salario de un empleado si obtuvo un incremento del 8% sobre su salario actual.
9. DFD: En un hospital existen 3 áreas: Urgencias, Pediatría y Traumatología. El presupuesto anual del hospital se reparte de la siguiente manera:
ÁREA
PRESUPUESTO
Urgencias
37%
Pediatría
42%
Traumatología
21%
Obtener la cantidad de dinero que recibirá cada área para cualquier monto presupuestal.