2. Sobre este material: Este material fue desarrollado por la estudiante Yelixa Araque del Programa Nacional de Formación de Sistemas e Informáticas de la Misión Sucre, el contenido del mismo es una introducción a la programación que oriente al estudiante en el inicio de la programación. Atentamente, TSU. Informática . Yelixa del C. Araque Angulo Ingeniería de Sistemas
4. ¿Qué es un Pseudocódigo ? Es un lenguaje intermedio entre el lenguaje natural y el lenguaje de programación seleccionado. La notación pseudodificada surge como medio para la representación de instrucciones en una metodología estructurada y nación como un lenguaje similar al inglés, que utilizaba palabras reservadas de este idioma (start, end,stop, while, repeat,for,if, if-then, else) y que posteriormente se fue adaptando a otros lenguajes de lengua hispana.
5.
6. Permite el diseño y desarrollo de algoritmos totalmente independientes del lenguaje de programación posteriormente utilizado en la fase de traducción o codificación.
7. Facilita el paso del algoritmo al correspondiente lenguaje de programación.
8. Permite una gran flexibilidad en el diseño del algoritmo a la hora de expresar acciones concretas.
9. Facilita la realización de futuras correcciones o actualizaciones gracias a que no es una representación rígido.
14. Cabecera Programa: Nombre del programa Módulo: Nombre del módulo Cuerpo Inicio Datos: Parámetros Constante Variables Algoritmo: Descripción detallada de órdenes Estructura de un módulo (notación pseudocodificado)
15. ¿Qué son los comentarios ? Son los utilizados a lo largo del diseño realizado para aclarar o facilitar su comprensión. Son reservados al propio código fuente del programa una vez traducido el algoritmo diseñado al lenguaje de programación seleccionado, donde se hacen imprescindibles para la futura comprensión del programa . Los comentarios no afectan directamente a la compilación de un programa .
16.
17. Existen varias notaciones para la representación de comentarios según el lenguaje de programación utilizado
18.
19. Explicar el objetivo de una instrucción de control (alternativa o repetitiva)
20. Aclarar zonas del programa donde se realizan cálculos y operaciones complejas.
21.
22. Instrucciones de definición de datos Son aquellas instrucciones utilizadas para informar al procesador del espacio que debe reservar en memoria con la finalidad de almacenar un dato mediante el uso de variables simples o estructuras de datos más complejas como, por ejemplo, tablas. La definición consiste en indicar un nombre a través del cual se hará referencia al dato y un tipo el cual informara al procesador de las características y espacio que se debe reservar en memoria.
23. Instrucciones de entrada Instrucciones de asignación InstruccionesPrimitivas Instrucciones de salida
24. Instrucciones de entrada Son aquellas instrucciones encargadas de recoger el dato de un periférico o almacenarlo en memoria en una variable previamente definida, para la cual se almacenado suficiente espacio en memoria Leer Variable Leer Variable
25. Instrucciones de asignación Son aquellas instrucciones encargadas de almacenar un dato o valor simple obtenido como resultado al evaluar una expresión en una variable previamente definida y declarada. Variable= expresión Variable = expresión
26. Instrucciones de salida Son aquellas instrucciones encargadas de recoger los datos procedentes de variables o los resultados obtenidos de expresiones evaluadas y depositarlos en un periférico o dispositivo de salida. Por ejemplo: la pantalla, una impresora. Escribir Expresión Escribir Expresión
27. Ejemplo 1: Diseñar un algoritmo que permita evaluar la función y= 3x+2z+ ½ w Algoritmo 0. Inicio 1.Leer x, z, w 2. Y = 3*x+2*z + w/2 3. Escribir (y) 4.Fin.
28. Instrucciones Compuestas Son aquellas instrucciones que no pueden ser ejecutadas directamente por el procesador, y están constituidas por un bloque de acciones agrupadas en subrutinas, subprogramas, funciones o módulos. Área del triangulo
29. Instrucciones de salto Instrucciones alternativas Instrucciones Primitivas Instrucciones repetitivas
30. Instrucciones de salto Son aquellas instrucciones que alteran o rompen la secuencia normal de ejecución de un programa perdiendo toda posibilidad de retornar el control de ejecución del programa al punto de llamada. El uso de esta instrucción queda restringido en una programación estructurada. Se clasifica en: Instrucciones de salto incondicional Instrucciones de salto condicional
31. Instrucciones alternativas Son aquellas que controlan la ejecución o la no ejecución de una o más instrucciones en función de que se cumpla o no una condición previamente establecida Alternativa doble Alternativa múltiple Alternativa simple
32. Alternativa simple Si No Condición Bloques de instrucciones Si condición Instrucción 1 Instrucción 2 …. Instrucción N Fin si Si condición Inst1; Inst2;…. ; InstN Fin si
33. Alternativa doble Condición Si condición Instrucción 1A Instrucción 1B …. Instrucción 1N Sino Instrucción 2A Instrucción 2 B … Instrucción 2 N Fin si Si No Bloques de instrucciones 1 Bloques de instrucciones 2
34. Alternativa múltiple Expresión Según_valor Expresión Valor 1: Bloque de instrucciones 1 Valor 2: Bloque de instrucciones 2 ….. Valor N: Bloque de instrucciones N Otros: ….. FinSegún_valor Bloques de instrucciones 2 Bloques de instrucciones N Bloques de instrucciones 1
35. Instrucciones repetitivas Son aquellas instrucciones que permiten variar o alterar la secuencia normal de ejecución de un programa haciendo posible que un grupo de acciones se ejecute más de una vez de forma consecutiva . También recibe el nombre de bucles o lazos. Estructura Para EstructuraMientras Estructura Repetir-Mientras
36.
37.
38. Ejemplo 1: Diseñar un algoritmo que permita elevar un numero m a una potencia n, m y n >= 0 y enteros. Algoritmo 0. Inicio cont= 1 exp= 1 Mientras (cont<= n) 3.1 exp = exp . M 3.2 cont = cont + 1 FinMientras 4. Escribir(exp) 5. Fin
39.
40.
41. Estructura Para La estructura Para se caracteriza porque el numero de veces que se repetirá el bloque de instrucciones esta fijado de antemano. Para Vcont de Vi a Vf con Inc = n Instrucción 1 Instrucción 2 …. Instrucción N FinPara Para Vcont de Vi a Vf con Inc= n Inst. 1; Inst. 2; … Inst. N FinPara Vcont = Vi, Vf, n Bloques de instrucciones
42.
43. Vi: Valor inicial que toma Vcont (valor inicial a partir del cual comienza la ejecución del bucle ).
44. Vf :Valor final para Vcont (es el valor final que se toma como referencia para la finalización del bucle).
45.
46. ¿Qué es un Contador? Un contador es una variable destinada a contener un valor que se irá incrementado o decrementado en una cantidad fija y constante y que es almacenado en memoria principal. Los contadores suelen utilizarse generalmente para el control de procesos repetitivos , es decir, su principal objetivo es contabilizar un conjunto de sucesos o acciones que se desean repetir en un programa mediante el uso de estructuras de control repetitivas (Mientras, Repetir- Mientras y Para)
47. Todo contador debe tomar un valor inicial antes de ser utilizado Contador Contador= Contador - Decremento Contador= Contador + Incremento Valor Constante
48. Ejemplo Contador : Diseño del algoritmo de un programa que lee M números y determina cuáles son pares y positivos. Programa: Positivo_y_Par Módulo: principal Inicio Datos: Variables C Numérico Entero M Numérico Entero N Numérico Entero R Numérico Real Algoritmo Leer M C = 0 Repetir C= C + 1 Leer N R= N/2 Si N= Int (R)* 2 Si N>0 Escribir N, “ es positivo y par “ FinSi FinSi Mientras C<M Fin
49. Inicio Leer M C= 0 C= C+1 LeerN R= N/2 N=int(R)*2 N >0 Escribir N es Positivo y Par C< M Fin
50. ¿Qué es un Acumulador? Un acumulador o totalizador es una variable destinada a contener o almacenar cantidades variables provenientes de los resultados obtenidos en operaciones aritméticas previamente realizadas de manera sucesivas, lo que nos permitirá obtener el total acumulado de dichas cantidades. Tienen las mismas características que los contadores, a excepción de que su objetivo no es controlar procesos repetitivos.
51. Acumulador= Acumulador + Incremento Valor Variable Acumulador= Acumulador * Incremento Es importante tener en cuenta las siguientes dos reglas: En aquellos casos en los que se pretenden obtener el total como suma de distintas cantidades, es necesario que el acumulador sea inicializado a 0. En aquellos casos en los que se pretenden obtener el total como producto de distintas cantidades, es necesario que el acumulador sea inicializado a 1.
52. Ejemplo Acumulador : Inicio Algoritmo que multiplica los 20 primeros números impares y muestra el resultado en pantalla. Ac = 1 C= -1 Si Programa: Producto impar Módulo: principal Inicio Datos: Variables C Numérico Entero Ac Numérico Entero Algoritmo Ac= 1 C = -1 Mientras C< 39 C= C + 2 Ac= Ac *C R= N/2 FinMientras Escribir Ac Fin Si C < 39 Ac = Ac * C C = C+2 Escribir Ac Fin
56. Ejercicio Nº 1 Dibujar el organigrama de una aplicación cuyo objetivo es la emisión de facturas a partir de los datos de compra introducidos por teclado y los datos de los clientes almacenados en un fichero soportado en disco. La factura se presenta en pantalla y una vez dada la conformidad se lista a de impresora. Datos Compra Datos Clientes Emisión Facturas Factura Factura Conforme
57. Ejercicio Nº 2 Escribir un programa expresando su algoritmo mediante ordinograma y pseudocódigo, que lea el valor correspondiente a una distancia en millas marinas y las escriba expresadas en metros. Sabiendo que una milla marina equivale a 1852 metros. Inicio Programa: millas_metros Módulo: principal Inicio Datos: Variables Dmillas Numérico Entero Dmetros Numérico Entero Algoritmo Escribir “ Distancias en millas ” leer Dmillas Dmetros= Dmillas * 1852 Escribir “ Distancia en metros: ” , Dmetros Fin Escribir Distancias en millas Leer Dmillas Dmetros = Dmillas * 1852 Escribir Distancias en metros Dmetros Fin
58. Ejercicio Nº 3 Diseñar el algoritmo, pseudocódigo y ordinograma, correspondiente a un programa que escribe el porcentaje descontado en una compra, introduciendo por teclado el precio de la tarifa y el precio pagado. Programa: Descuentos Módulo: principal Inicio Datos: Variables Tarifa Numérico Entero Precio Numérico Entero Dto. Numérico Entero Pd Numérico Entero Algoritmo leer Tarifa Leer Precio Dto = Tarifa – Precio Pd = Dto * 100 / Tarifa Escribir “ Porcentajes de Descuento: ” , Pd Fin Inicio Leer Tarifa Leer Precio Dto= Tarifa - Precio Pd= Dto *100/ Tarifa Escribir Porcentaje de descuento : “ Pd Fin
59. Ejercicio Nº 4 Algoritmo que lee dos valores numéricos “X” e “Y”. Determina si son iguales y en caso de no serlo, indica cuál de ellos es el mayor. Programa: Condicion_anidada Módulo: principal Inicio Datos: Variables X Numérico Entero Y Numérico Entero Algoritmo leer X,Y Si X > Y Escribir “ El mayor es: ” , X Sino Si X = Y Escribir “ Son iguales ” Sino Escribir “ El mayor es: ” , Y FinSi FinSi Fin