Académique Documents
Professionnel Documents
Culture Documents
1. Anlisis 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 programacin (LP). Ejemplo: Elaborar un programa que halle la suma de dos valores enteros 2+2=?
2. Diseo del algoritmo: Diramos que un algoritmo es una serie de instrucciones que colocadas en un orden lgico conducen a la solucin de un problema. Se debe hacer en una forma tan clara que cualquier otro programador pueda entenderlo.
TIPOS DE DIAGRAMACIN ALGORTMICA En general, hay varias formas de escribir un algoritmo, pero explicaremos dos de las tcnicas ms conocidas: Diagramas de Flujo (DFD) y Pseudocodificacin. Diagrama de flujo de Datos (DFD): Los diagramas de flujo son descripciones grficas de algoritmos; usan smbolos conectados con flechas para indicar la secuencia de instrucciones.
Proceso de asignacin
Decisin
PSEUDOCODIGO: En el pseudocdigo, cada instruccin es una lnea y las operaciones elementales se escriben de una forma tan clara que ser imposible que algn programador no las entienda. Aqu utilizaremos un pseudocdigo un poco personalizado, para hacer ms sencilla la explicacin. Para realizar dichas instrucciones, se utilizan bsicamente Variables y Operadores. EJEMPLO: Hacer un programa que me muestre la suma de dos valores.
3. Codificacin: 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. Compilacin e ejecucin: se procede a ejecutar el programa para verificar si est correcto o no.
5. Depuracin: Es la finalizacin de la solucin del problema. 6. Mantenimiento: Las correcciones y/o modificaciones durante la vida del software. 7. Documentacin: Es la elaboracin del manual de uso del sistema.
EJERCICIO DE DFD: 1. Elaborar un algoritmo en DFD y Pseudocdigo para hallar el tipo de cambio de soles a dlares.
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 informacin (nmeros, letras, frases, etc.), las variables pueden tener cualquier nombre pero preferiblemente deben ser mnemotcnico, es decir, que tenga relacin con l o los datos que se almacenarn en la variable. AQU ALGUNAS REGLAS: 1. No pueden comenzar con nmeros. 2. No pueden contener smbolos u operadores en ninguna posicin del nombre, excepto el carcter _. 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 ejecucin de cualquier programa. Ejemplos: Cambio= 2.80 Num1= 20 Num2= 10
OPERADORES ARITMTICOS Nos permiten realizar operaciones numricas con nuestras variables. + * / % ^ Ejemplo: RES = NUM1 + NUM2 OPERADORES DE COMPARACIN Se utilizan principalmente en nuestras condiciones para comparar dos variables y verificar si cumple o no la propiedad del operador, este retornara un valor lgico como Verdadero o Falso. : : : : : : Suma Resta Multiplicacin Divisin Devuelve el Potenciacin
residuo
de
la
divisin
= : igualdad <> : Diferente < : Menor <= : Menor igual que > : Mayor >= : Mayor igual que
Donde la operacin Lgica (NOTA >= 10.5) ,nos dar slo un resultado (VERDADERO o FALSO).
OPERADORES LGICO Se usan en combinacin con los operadores de comparacin cuando la expresin de la condicin lo requiere. AND : Y OR : O NOT : No
DISEO DE FORMULAS Las operaciones en un computador tienen un cierto orden de importancia, es decir, algunas se efectan primero que otras. Divisin, multiplicacin, suma y resta. Si no se coloca ningn parntesis en la operacin aritmtica, el orden anterior es el que tiene la mquina para realizar las operaciones, pero al colocar algo entre parntesis, esa parte de operacin primar sobre las dems. 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.
4.
5.
En lo sucesivo veremos ms ejemplos de cmo desglosar una frmula matemtica 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 numrica, de uno en uno, de dos en dos, etc. (esto se aplica tambin 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 informacin y la incrementa dependiendo de las variables que contengan. EJEMPLO: ACUM = ACUM + CONT
ESTRUCTURA SECUENCIAL La estructura secuencial es aquella en la que una accin (instruccin) 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 Pseudocdigo es la siguiente: En diagrama DFD se as:
Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmos representados en Pseudocdigo y en diagramas de flujos: Tengo un telfono y necesito llamar a alguien pero no s cmo hacerlo.
INICIO: Levante la bocina Espere tono Marque el nmero Espere que contesten Hable con la otra persona Cuelgue la bocina FIN
ESTRUCTURA CONDICIONAL Una instruccin condicional es aquella que nos permite "preguntar" sobre el entorno que nos rodea, pudiendo as actuar segn la respuesta obtenida. Estas respuestas siempre sern Verdadero o Falso, pudiendo as tomar, en un principio, dos caminos diferentes. La estructura de decisin es simplemente una instruccin que evala una expresin lgica, 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 expresin lgica sea FALSA. PSEUDOCDIGO SI < Expresin Lgica > ENTONCES < instrucciones > SI NO < instrucciones > FIN SI DFD
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. PSEUDOCDIGO DFD
EJEMPLO 2: Elaborar un algoritmo que me muestre el mayor de dos nmeros ingresados por teclado. PSEUDOCDIGO DFD
APLICACIONES DE CONSOLA
Import System.Console El uso de Imports lo que hace es indicarle al compilador dnde buscar la definicin de los tipos que estamos usando en nuestro cdigo, para as ahorrarnos la escritura de los espacios de nombres que habitualmente usamos, de esa forma podemos acortar el cdigo 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 segn la lgica de nuestro algoritmo y/o programa.
EJEMPLO:
Si deseamos crear una variable que nos almacene el promedio de una nota, este sera de tipo Decimal.
Object = 4 bytes
User-Defined
Mtodo WriteLine() Este mtodo usaremos para mostrar algn texto o valor en la pantalla de la consola. El parmetro que recibe el mtodo puede ser de varios tipos, ya sea una cadena de caracteres, un nmero entero, una lnea en blanco, etc...
CASO 1:
Si lo que deseamos es mostrar algn mensaje, ejemplo la palabra Bienvenido a mi Blog, el cdigo 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 algn valor que contenga alguna de nuestras variables el cdigo completo seria el siguiente:
Imports System.Console Module Module1 Dim num As Integer = 15 Sub Main() WriteLine(num) ReadLine() End Sub End Module NOTA: cmo 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 cdigo 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
WRITELINE: Al final de la instruccin usted puede ver un LINE (WriteLINE), lo que indica que una vez mostrado el mensaje el pront saltara a la siguiente lnea
WRITE: En este caso la instruccin 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.
Mtodo ReadLine() Este mtodo permite almacenar en variables la informacin que se ingresa por teclado.
Para ello tenemos que hacer uso de una buena declaracin 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 informacin, de esta manera cuando estemos en modo ejecucin y la compilacin llegue a esa lnea de cdigo, 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 lneas de cdigo.
NOTA: Si observamos al final de casi todos los programas va un Readline(), este se inserta en los cdigos de tal manera que luego de haber ejecutado nuestro programa este haga una pausa de pantalla para poder ver los resultados de nuestra compilacin, luego al pulsar cualquier tecla nuestro programa acabara y regresara a la pantalla de cdigo.
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 nmero de 2 cifras y sume sus elementos.
03. DFD: Elabore un programa que lea 2 nmeros enteros positivos y que muestre la suma y la multiplicacin de estos.
04. DFD: Una persona recibe un prstamo de $100.00 de un banco y desea saber cunto pagar de inters, si el banco le cobra una tasa del 2% mensual.
05. DFD: Calcula el precio de un boleto de viaje, tomando en cuenta el nmero de kilmetros 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 promocin gratis.
07. DFD: Calcular el cambio de monedas en dlares 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, Pediatra y Traumatologa. El presupuesto anual del hospital se reparte de la siguiente manera:
Obtener la cantidad de dinero que recibir cada rea para cualquier monto presupuestal.