Escolar Documentos
Profissional Documentos
Cultura Documentos
4to. de Secundaria
Tcnicas de Programacin
4to. de Secundaria
Tcnicas de Programacin
4to. de Secundaria
Tcnicas de Programacin
Pseudocdigo
Pseudocdigo significa representar un algoritmo en una secuencia lgica de actividades que en su conjunto conforman la solucin de un problema, utilizando generalmente verbos expresivos de la actividad que representa. El pseudocdigo utiliza un lenguaje de comunicacin propio de uso cotidiano por ejemplo castellano, ingls, portugus, alemn, etc., y si se conoce algn lenguaje de programacin se puede utilizar algunos elementos que simplifiquen su explicacin en el propio lenguaje como se puede apreciar en algunos algoritmos resueltos.
Diagrama de Flujo
Diagrama de Flujo significa representar un algoritmo en un dibujo, utilizando smbolos grficos que esquematizan determinados hechos, tales smbolos tambin estn estandarizados, teniendo cada uno un significado universal. Un diagrama de Flujo es una representacin grfica que utiliza los smbolos (cajas) estndar y que tiene los pasos del algoritmo escritos en esas cajas, las mismas que se unen mediante flechas, denominadas lneas de flujo.
Entrada / Salida Simboliza el ingreso o salida de datos o informacin en un programa. Este smbolo va en cualquier parte del diagrama de flujo dependiendo en que parte se ingresen o muestren datos. Ejemplo: Ingresar un nmero N.
Proceso En este smbolo se representan todas las acciones u operaciones matemticas o lgicas que se realizan en el desarrollo de un programa. Estas operaciones pueden originar tambin el cambio de un valor dentro del programa.
4to. de Secundaria
Tcnicas de Programacin
Ejemplo: Sumar 2 + 5, X = m + n
Condicional Representa a las operaciones de comparacin entre datos. El resultado de esta comparacin determina el flujo o camino del programa. Normalmente un smbolo condicional tiene dos salidas: SI o NO. Ejemplo: Averiguar si A es mayor que B.
Conector misma pgina Este smbolo se utiliza para enlazar dos partes cualquiera de un diagrama de flujo. Esto se realiza a travs de un conector en la salida y otro conector en la entrada. Este smbolo se refiere a la conexin en la misma pgina del diagrama, llevan una letra o un nmero en el interior a fin de identificar cules son los bloques del diagrama de flujo, con los cules estn conectados. Ejemplo:
Conector otra pgina Permite hacer la conexin o enlazar diagramas de flujo cuando stos usan ms de una pgina. Se utiliza uno al final de la pgina y otro al comenzar la siguiente pgina, llevan una letra o un nmero en el interior a fin de identificar cual es la pgina del diagrama de flujo, con la cual est conectado. Ejemplo:
4to. de Secundaria
Tcnicas de Programacin
Pantalla Este smbolo se utiliza en ocasiones para representar la salida de un dato en la pantalla. Ejemplo: Mostrar en pantalla el nmero 5.
Impresora Este smbolo se utiliza en ocasiones para representar la salida de un dato a travs de la impresora. Ejemplo: El resultado de X = 2 + 6 aparezca por impresora.
Cabezas de Flecha Indican la direccin o lnea de flujo que tomar el diagrama de flujo (Direccin del Flujo de Control en la secuencia del programa escrito). Ejemplo:
Sentido Es una lnea que indica la unin de dos smbolos de un diagrama de flujo y el sentido mismo del flujo de los datos o informacin. Es decir, si ste ser horizontal o vertical. Generalmente se adopta que la direccin del flujo deber ser de arriba hacia abajo y de izquierda a derecha. Ejemplo:
4to. de Secundaria
Tcnicas de Programacin
NO : entonces ir al servicentro. 3. Colocar la gata y levantar el carro. 4. Aflojar las tuercas. 5. Estn todas las tuercas flojas? SI : entonces ir al paso 7.
NO : entonces continuar aflojndolas. 6. Regresar al paso 4. 7. Efectuar el cambio de neumtico. 8. Ajustar las tuercas. 9. Bajar el carro. 10. Termina el proceso.
En este ejemplo sencillo se notar que empleamos los smbolos de proceso y condicional en varios momentos diferentes del proceso de este algoritmo. Se observa tambin en este ejemplo con la secuencia de flujo dado por las flechas indican unin de las acciones a partir de la accin 3 (levantar el carro); tanto en el caso que la reparacin la realice el mismo conductor en la calle o el mecnico en el servicentro. A continuacin veremos el diagrama de flujo del problema.
4to. de Secundaria
Tcnicas de Programacin
4to. de Secundaria
Tcnicas de Programacin
4to. de Secundaria
Tcnicas de Programacin
Expresiones
Las expresiones son combinaciones de constantes, variables, smbolos de operacin, parntesis y nombres de funciones especiales. Las mismas ideas son utilizadas en notacin (forma de escritura) matemtica tradicional. Los valores de las variables nos permitirn determinar el valor de las expresiones, debido a que stos estn implicados en la ejecucin de las operaciones indicadas. Estas constan de operandos y operadores. Segn el tipo de objeto que manipulan, pueden clasificarse en:
Expresiones Aritmticas Estas expresiones son anlogas a las frmulas matemticas. Las variables y constantes son numricas (real o entera) y las operaciones son las aritmticas. Las palabras claves div y mod se conocen como operadores matemticos. + suma resta * multiplicacin / divisin **, ^ exponenciacin div divisin entera mod mdulo o resto Reglas de prioridad Las expresiones que tienen dos o ms operandos requieren de reglas matemticas que permitan determinar el orden de las operaciones, stas se denominan reglas de prioridad o precedencia y son: 1. Las operaciones que estn encerradas entre parntesis se evalan primero. Si existen diferentes parntesis anidados (interiores unos a otros), las expresiones ms internas se evalan primero. 2. Las operaciones aritmticas dentro de una expresin suelen seguir el siguiente orden de prioridad:
10
4to. de Secundaria
Tcnicas de Programacin
a) Operadores de relacin: Los operadores de relacin permiten realizar comparaciones de valores de tipo numrico o carcter. Estos sirven para expresar las condiciones en los algoritmos. Los operadores de relacin se pueden aplicar a cualquiera de los cuatro tipos de datos estndar: entero, real, lgico, caracter. < menor que. > mayor que. = igual que. <= menor o igual que. >= mayor o igual que. < > distinto de. b) Operadores lgicos: Los operadores lgicos bsicos son not (no), and (y) y or (o). Los operadores lgicos y relacionales cuentan con un orden de prioridad. Dentro de stos, los parntesis y caracteres de esta naturaleza se pueden utilizar y tendrn prioridad sobre cualquier operacin. Operaciones de asignacin La operacin de asignacin es el modo de darle valores a una variable, se representa con el smbolo u operador. Esta operacin de asignacin se conoce como instruccin o sentencia de asignacin cuando se refiere a un lenguaje de programacin. La forma general de una operacin de asignacin es: Nombre de la variable = expresin En este tipo de operacin aparecer un error cuando se quiere asignar valores de tipo carcter a una variable numrica o viceversa.
4to. de Secundaria
11
Tcnicas de Programacin
Ejercicio
Elaborar el algoritmo y el diagrama de flujo que describa los pasos a seguir por una persona que efecta una llamada telefnica a otra persona. Solucin:
1. Inicio del proceso. 2. Descolgar el telfono. 3. Obtener lnea. 4. Marcar el nmero. 5. El nmero marcado est ocupado? SI: entonces ir al paso 6. NO: entonces ir al paso 7. 6. Continuar marcando? SI: regresar al paso 3. NO: entonces ir al paso 11. 7. El nmero marcado est equivocado? SI: entonces ir al paso 6. NO: entonces ir al paso 8. 8. Contesta el telfono la persona requerida? SI: realizar la conversacin, e ir al paso 11. NO: entonces ir al paso 9. 9. Se encuentra la persona requerida? SI: realizar la conversacin e ir al paso 11. NO: entonces ir al paso 10. 10. Dejar un mensaje con la persona que contesta? SI: entonces encargar el mensaje. NO: entonces disculparse. 11. Colgar. 12. Termina el proceso.
12
4to. de Secundaria
Tcnicas de Programacin
Ejercicio
Elaborar el algoritmo y el diagrama de flujo de las actividades que realiza una persona para llegar a su trabajo en la maana. Solucin:
1. Inicio del proceso. 2. Levantarse. 3. Asearse (baarse y cepillarse los dientes). 4. Vestirse. 5. Tomar desayuno. 6. Lavarse. 7. Prepara el material de trabajo hasta completarlo. 8. Est todo completo? SI: entonces ir al paso 10. NO: buscar lo que falta e ir al paso 9. 9. Regresar al paso 8. 10. Despedirse. 11. Va al trabajo en auto propio? SI: entonces arrancar y ponerlo en marcha. NO: Va en movilidad pblica? SI: entonces ir al paradero y abordar la movilidad. NO: entonces caminar a su centro de trabajo. 12. Ingresar a su centro de trabajo. 13. Termina el proceso.
4to. de Secundaria
13
Tcnicas de Programacin
Ejercicio
Elaborar el algoritmo y el diagrama de flujo que muestre por pantalla todos los nmeros pares mayores que cero(0) pero menores que mil (1,000). Solucin: 1. Inicio del proceso. 2. Representar a los nmeros pares por PAR. 3. Asignar valor inicial: PAR = 0. 4. Incrementar: PAR = PAR + 2. 5. Es PAR < 1,000? SI: entonces ir al paso 6. NO: entonces ir al paso 8. 6. Mostrar en pantalla el valor de PAR. 7. Regresar al paso 4. 8. Terminar el proceso.
14
4to. de Secundaria
Tcnicas de Programacin
Prctica Dirigida N 1 .
Iteracin, Decisin y Nitidez Elaborar el algoritmo que calcule el rea del rectngulo cuya base es B = 4 y la altura H = 1; adems que recalcule la misma rea incrementando cada vez una unidad a B y H. Algoritmo 1. Asignar el valor inicial B=4yH=1 2. Calcular el rea aplicando la frmula: A=B*H 3. Imprimir B, H, A 4. Incrementar en una unidad los valores de B y H B=B+1 H=H+1 5. Regresar al paso 2 En este ejemplo simple se observa que la flecha gua que sale de la ltima figura del diagrama, retorna a un paso anterior dentro del mismo diagrama de flujo; esto es lo que se conoce como una iteracin. Es decir un diagrama de flujo que retorna sobre s mismo repetir nuevamente las mismas operaciones que aparecen dentro de cada bloque a partir de aquel hasta donde retorn la flecha sobre el diagrama. Cada una de estas repeticiones es una iteracin. Veamos el ejemplo anterior que calcula reas de rectngulo a cuyo algoritmo le agregamos dos secuencias ms. Algoritmo 1. Asignar el valor inicial B=4 y H=1 2. Calcular el rea aplicando la frmula: A=B*H 3. Es el rea A, mayor que 60 unidades cuadradas? SI : entonces ir al paso 7 NO : entonces continuar el proceso 4. Imprimir B, H, A 5. Incrementar en una unidad los valores de B y H B=B+1 H=H+1 6. Regresar al paso 2 7. Termina el proceso Este diagrama de flujo difiere mucho del anterior, en primer lugar observamos que el primer diagrama de flujo muestra iteraciones; pero no muestra el final de ellos; es decir el diagrama de flujo tiene un principio pero no muestra donde finaliza el proceso; por el contrario vemos en el segundo diagrama de flujo que agregando el rombo de decisin este limita el nmero de iteraciones, lo que significa que indica si continuamos o detenemos el proceso de acuerdo a una condicin que aparece dentro del rombo. As vemos que la interrogante que aparece dentro del rombo del segundo diagrama de flujo dice: Es A > 60 unidades cuadradas? Si la respuesta es NO, la flecha indica continuar el proceso; pero si la respuesta es SI, la flecha indica detener el proceso.
4to. de Secundaria
15
Tcnicas de Programacin
Cuntos valores de B, H y A imprimir el programa? Veamos: 1. B=4 y H=1 Entonces : 2. B=5 y H=2 Entonces : 3. B=6 y H=3 Entonces : 4. B=7 y H=4 Entonces : 5. B=8 y H=5 Entonces : 6. B=9 y H=6 Entonces : 7. B = 10 y H = 7 Entonces :
A1 A2 A3 A4 A5 A6 A7
= = = = = = =
4 u2 10 u2 18 u2 28 u2 40 u2 54 u2 70 u2
Cuando la iteracin No. 7 obtenga: A7 = 10 x 7 = 70 u2 que obviamente es mayor que 60 u2 entonces inmediatamente se detendr el proceso por lo que concluimos que existirn slo 6 iteraciones y se imprimirn 6 valores correspondientes a B, H y A. Cuando se elabore un diagrama de flujo se debe procurar que este sea claro y ntido; es decir esforzarse por plantear los diagramas de tal forma que el flujo del proceso siga un orden, de izquierda a derecha y de arriba abajo. Con esto logramos que los dems comprendan la secuencia seguida en la solucin del problema planteado.
Como se observar este diagrama de flujo muestra la solucin al problema de manera diferente al que muestra el segundo diagrama de flujo; esto nos permite hacer algunas afirmaciones: - Ningn diagrama mostrar la solucin a un problema de la misma manera que otro. - En la elaboracin de un diagrama de flujo deben ponerse de manifiesto la creatividad del programador (eso s esforzndose por elaborar los diagramas respetando los estndares establecidos; es decir que el flujo del proceso se muestre de izquierda a derecha y de arriba abajo). De igual manera otro programador puede haber elaborado el mismo diagrama de flujo de la siguiente forma:
16
4to. de Secundaria
Tcnicas de Programacin
Analizando este diagrama vemos que el programador a preferido limitar el espacio ocupado por el diagrama de flujo, al igual que en el ejemplo anterior. El diagrama de flujo no est mal elaborado, lo nico que se aprecia, es que hasta en dos partes del mismo el sentido de las flechas son contrarias al que por regla debe seguirse, no obstante el diagrama de flujo corresponde perfectamente al algoritmo que da solucin al problema. Esto es que las flechas del diagrama no dejan duda alguna acerca del orden con que sern ejecutadas las operaciones cuando el programa sea codificado. Dado el siguiente diagrama de flujo escribir su algoritmo respectivo y elaborar un diagrama de flujo de manera diferente al mostrado (donde no aparezcan crculos conectores). Cuntas impresiones e iteraciones efectuar el computador?
N de Impresiones: ________
N de Iteraciones: _________
4to. de Secundaria
17
Tcnicas de Programacin
18
4to. de Secundaria