Escolar Documentos
Profissional Documentos
Cultura Documentos
INDICE DE CONTENIDO
Introduccin Objetivo
Captulo I
Conceptos y Metodologa
I.1. Definicin de lenguaje I.2. Historia y aplicacin de los lenguajes algortmicos I.3. Definicin de algoritmo I.4. Tipos de algoritmos I.5. Lenguajes algortmicos I.6. Definicin del problema I.6.1. Anlisis del problema I.6.2. Diseo del algoritmo I.6.3. Crear Cdigo I.6.4. Ejecutar I.6.5. Documentacin I.7. Ejercicios
Captulo II
Entidades Primitivas
II.1. Tipos de datos II.1.1. Tipo entero II.1.2. Tipo real II.1.3. Tipo carcter II.1.4. Tipo booleano II.2. Expresiones II.2.1 Aritmticas II.2.2. Relacionales II.2.3. Lgicas II.3. Operadores y Operandos II.4. Variables II.4.1. Reglas para generar variables
Manual de Algoritmos
II.5. Constantes II.6. Asignaciones II.7. Datos de entrada II.8. Datos de salida II.9. Ejercicios
Captulo III
III.2. Pseudocdigo
Tcnicas
III.3. Diagramas estructurados (Nassi Schneiderman) III.4. Top Down III.5. Bottom Up III.6. Resolucin de problemas III.7. Programacin modular III.8. Programacin estructurada III.9. Ejercicios
Captulo IV
IV.1. Sintaxis IV.2. Estructura
Estructuras
IV.3. Estructuras secuenciales IV.4. Estructuras condicionales IV.5. Estructuras cclicas IV.6. Ejercicios
Captulo V
V.1. Definicin V.2. Vectores V.3. Matrices V.4. Ejemplos
Arreglos
Manual de Algoritmos
Introduccin
INTRODUCCION
Dentro del mundo de la informtica, el desarrollo de programas ocupa un lugar muy especial, ya que ste es el motor del avance de la misma, por lo que todo inicio debe contener, el conocimiento adecuado y correcto del desarrollo de los algoritmos. El principiante debe entender que la programacin de aplicaciones requiere del desarrollo de pensamientos lgicos para ser aplicados a un problema y obtener la solucin adecuada, y que estos pensamientos ya se encuentran dentro de nuestro pensar diario, solo hay que encontrarlo, sacarlo, pulirlo y plasmarlo en un algoritmo. La lgica de programacin no exige conocimientos de computacin ni la presencia de alguna aplicacin, ya que esta forma de pensamiento se consigue a travs de la prctica continua de la resolucin de problemas, siguiendo un proceso metdico de la solucin por algoritmos. Este manual se enfocar al principiante, para ayudarlo a conseguir la solucin de los algoritmos, de manera obvia y fcil. Podemos garantizar que la lectura completa y la prctica de los ejercicios propuestos en este manual llevarn al participante a encontrar los pensamientos lgicos para la solucin de algoritmos.
Pagina 1
Captulo I
Concepto y Metodologa
I.1.
Definicin de lenguaje
De acuerdo con el diccionario de la Lengua Espaola. Lenguaje: Conjunto de sonidos articulados con que el hombre manifiesta lo que piensa y siente.1 Conjunto de signos y reglas que permiten la comunicacin con un ordenador. Lenguaje de Programacin: Lenguaje que facilita la comunicacin con un computador mediante signos convencionales cercanos a los de un lenguaje natural. Con estos conceptos podemos comprender que nuestro concepto de Lenguaje quedara de la siguiente manera: Conjunto de signos y reglas que permiten establecer una comunicacin entre el usuario y la computadora. Tomando en cuenta que la comunicacin se forma entre un emisor y un receptor, contando con un medio de comunicacin y el mensaje, contemplando que el mensaje corre en un sentido, alternando los papeles de emisor, receptor y el sentido del mensaje segn se necesite.
I.2.
El lenguaje algortmico permite la comunicacin entre el programador y la computadora, siguiendo esta las indicaciones que se encuentren en dicho algoritmo, terminado podemos crear un programa, trasladando la estructura del algoritmo a un lenguaje de programacin. A los primeros lenguajes de programacin se les conocieron como lenguaje ensamblador, estos son una representacin simblica de cdigos binarios, el cual representa de manera muy similar del cdigo maquina especifico para cada arquitectura. Por esto es llamado de Bajo Nivel. El lenguaje ensamblador fue usado en los inicios del desarrollo de programas, ya que aun no se contaba con los lenguajes de Alto Nivel, quienes contemplan sintaxis y/o palabras reservadas similares a las usadas en nuestro lenguaje comn, tambin contienen mdulos que nos permiten crear programas con imgenes y cuadros de dilogos, de manera fcil y rpida.
http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=lenguaje
Pagina 2
Captulo I
Concepto y Metodologa
La aplicacin de los algoritmos no se encuentra limitada a la creacin de programas de computadora, se pueden emplear en todas las areas del conocimiento, donde sea necesario crear un proceso que contenga inicio, desarrollo y fin, logrando cumplir con un resultado siempre igual, sin importar cuantas veces se aplique el procedimiento. Un algoritmo debe tener las siguientes caractersticas. Contar con un Inicio, tener un Desarrollo que deber ser Preciso, Definido y Finito, y tener un Fin. o o o Preciso Definido Finito
I.3.
Definicin de algoritmo
Para el tema de este manual definiremos algoritmo de la siguiente manera:
Secuencia de pasos lgicos, precisos, definidos y finitos para resolver un problema, de la manera ms obvia y fcil.
I.4.
Tipos de algoritmos
Los podemos dividir en dos, algoritmos cotidianos y algoritmos computacionales. Ambos pueden ser escritos en pseudocdigo y diagrama de flujo. Algoritmos cotidianos: Son aquellos donde el que realiza los pasos es la persona, como ejemplo: Algoritmo para comprar un libro. (escrito en pseudocdigo) 1. 2. 3. 4. 5. Inicio Determinar el ttulo del libro Dirigirse a una librera Preguntar por el libro Si tienen el libro en venta entonces Comprarlo Si no Regresar al paso 3 6. Fin Jose Antonio Diaz Montejo Pagina 3
Captulo I
Algoritmos computacionales:
Concepto y Metodologa
Son aquellos que se ejecutan en una computadora, como ejemplo: Algoritmo para conocer si un nmero es par. (escrito en pseudocdigo) 1. Inicio 2. Pedir el nmero 3. Si el residuo de dividir el numero entre 2 es igual a 0 entonces El nmero es par Sin no El nmero es impar 4. Fin Como podemos ver ambos cumplen con las caractersticas mencionadas en el tema I.2.
I.5.
Lenguajes algortmicos
Smbolos y reglas que se utilizan para describir de manera ordenada y clara un proceso, para ello dividiremos los lenguajes algortmicos en Escritos y Grficos. o o Escritos: (pseudocdigo) Presentacin en forma de texto de los paso a realizar dentro del algoritmo. Grficos: (diagrama de flujo) Es la representacin grafica de los pasos a realizar dentro del algoritmo.
Ejemplos: Escritos: Algoritmo para conocer si un nmero es par. 1. Inicio 2. Pedir el nmero 3. Si el residuo de dividir el numero entre 2 es igual a 0 entonces El nmero es par Sin no El nmero es impar 4. Fin
Pagina 4
Captulo I
Grficos:
Concepto y Metodologa
Como podemos ver ambos nos conducen a travs de una serie de pasos en secuencia hacia un resultado, sin importar cuantas veces los recorramos.
I.6.
Indudablemente el problema se encuentra en el correcto planteamiento del enunciado del problema, es necesario tener un conocimiento claro y preciso de lo que se requiere realice la computadora. Crear un programa tiene mucho de creatividad, imaginacin, conocimiento, pero aun ms de certeza de la solucin esperada a travs de la comprensin del problema. Podemos estructurar una secuencia de pasos lgicos para el diseo de un programa pero no deja de ser algo meramente esquemtico.
http://commons.wikimedia.org/wiki/File:DiagramaFlujoLampara.svg?uselang=es
Pagina 5
Captulo I
Concepto y Metodologa
DISEO DE UN PROGRAMA
Analizar el Problema
Algoritmo
Crear Cdigo
Ejecutar
Documentos
I.6. 1. Analizar el Problema: Comprendido el resultado esperado del futuro programa. Determinar los datos de entrada. Determinar los datos de salida. Formulas y procedimientos para el proceso de los datos
Recordar que es de gran utilidad tomar el lugar de la computadora para una rpida comprensin de las rdenes a recibir y los mensajes a enviar al usuario, as como la secuencia de las rdenes. I.6.2. Diseo del Algoritmo: Ver el punto (I.2. Historia y aplicacin de los lenguajes algortmicos) I.6.3. Crear Cdigo:
Pagina 6
Captulo I
Concepto y Metodologa
Utilizar un lenguaje de programacin adecuado que nos permita crear el programa de la manera ms eficiente y segura. I.6.4. Ejecutar: La ejecucin consiste en abrir el archivo compilado de nuestro programa y revisar todos los puntos que se involucran entre el programa y el usuario y los puntos que el usuario no observa pero que se desarrollan dentro del programa para cumplir con el resultado esperado. Podemos agregar un paso que es la depuracin del programa, para solventar las deficiencias encontradas, as como agregar las lneas de cdigo necesarias para evitar que el usuario ingrese datos no correctos. I.6.5. Documentacin: Esta parte es la recopilacin de todo el trabajo creado, ya que el programa puede ser modificado adaptado por otra persona. De aqu saldr el manual del usuario.
Pagina 7
Captulo I
I.7. Ejercicios del captulo I.
Concepto y Metodologa
1.- Escribe un algoritmo en pseudocdigo que calcule el resultado de sumar dos nmeros y lo muestre en pantalla. 1. 2. 3. 4. 5. 6. 7. 8. 9. Inicio Var: n1, n2, resultado, entero; Escribir: Ingresa el primer nmero; Leer: n1; Escribir: Ingresa el segundo nmero; Leer: n2; resultado <- n1 + n2; Mostrar: resultado Fin
2.- Escribe un algoritmo en pseudocdigo que muestre si el numero ingresado es positivo, negativo o nulo. Siendo positivo mayor que 0, negativo menor que 0 y nulo igual a 0. 1. Inicio 2. Var n1, entero 3. Escribir: Ingresa un nmero; 4. Leer n1; 5. Si n1 = 0 entonces 5.1. Mostrar: n1 Es nulo 5.2. Si no 5.3 Si n1 > 0 entonces 5.3.1. Mostrar: n1 Es positivo 5.3.2. Si no 5.3.2. Mostrar: n1 Es negativo 5.4. Fin Si 6. Fin Si 7. Fin
Pagina 8
Captulo II
Entidades Primitivas
II.1.
Tipos de datos
Los tipos de datos hacen referencia al tipo de informacin que se trabaja, donde la unidad mnima de almacenamiento es el dato, tambin se puede considerar como el rango de valores que puede tomar una variable durante la ejecucin del programa. Un dato puede ser un caracter y el tipo determina la naturaleza del dato. Los tipos de datos simples son los siguientes: Numricos (integer, real) Lgicos (boolean) Caracter (char, string)
II.1.1. Tipo entero Los enteros son nmeros completos, no contienen fracciones o decimales, pueden ser negativos o positivos. Ejemplo: II.1.2. Tipo real Los reales son nmeros que tiene punto decimal y pueden ser negativos o positivos. Ejemplo: -1.1 10.5 -1.1 -10.5 -1 10 135 1000 -1 -10 -135 -1000
32768 -32768
Pagina 9
Captulo II
II.1.3. Tipo caracter
Entidades Primitivas
Un dato de tipo caracter es un equivalente del Cdigo ASCII (American Standard Code for Interchange Information). Por lo que cada caracter representa para la maquina un cdigo ASCII, que a su vez se lee como un cdigo binario. Un conjunto de caracteres forman una cadena (string). Se puede representar nmeros como caracteres, pero pierden su propiedad matemtica, por lo que no podrn ser usados con un operador. La forma para representarlos dentro de una sintaxis es encerrndolos entre comillas. Ejemplo: Manual de Algoritmos 2012
II.1.4. Tipo booleano Estos datos solo pueden tener dos valores (CIERTO o FALSO), (TRUE o FALSE), debido a que son el resultado de realizar una comparacin entre dos o ms datos numricos o caracteres. Ejemplo: A = A cierto (true) 2.5 < 3.5 cierto (true) Hola = Casa falso (false)
II.2
Expresiones
Son combinaciones de constantes, variables, smbolos de operacin, parntesis y
nombres de funciones especiales. Una expresin se compone de operadores y operandos. Dependiendo del tipo de datos contenido se clasifican en:
II.2.1 Aritmticas Son aquellas que contienen datos de tipo numrico y que usando un operador aritmtico nos darn un resultado entero o real. Ejemplo: (2.5 * 11) + (3 *8) 5 Pagina 10
Captulo II
10 div 3 10 mod 3 resultado = 3 resultado = 1 Operadores Aritmticos Operador ^ ** + * / Div Mod Significado Exponente Suma Resta Multiplicacin Divisin Divisin entera Resto
Entidades Primitivas
II.2.2. Relacionales Estos permiten realizar comparaciones entre los datos, ya sean de tipo numrico o caracter, a travs de condiciones en los algoritmos. Ejemplo: A>B 5=6 8 <= 3 verdadero falso verdadero Operadores de Relacin Operador < > = <= >= <> Significado Menor que Mayor que Igual Menor o igual Mayor o igual Distinto
II.2.3. Lgicas Estos datos solo pueden tener dos tipos de resultado, (verdadero o falso). Ejemplo: A es verdadero Y B es verdadero por tanto AB es verdadero. A es falso Y B es verdadero por tanto AB es falso. Jose Antonio Diaz Montejo Pagina 11
Captulo II
Operadores Lgicos Operador And Or Not Significado Y O Negacin
Entidades Primitivas
Tablas de verdad Operador And (Y) Operando 1 V V F F Operador AND AND AND AND Operando 2 V F V F Resultado V F F F
Pagina 12
Captulo II
II.3 Operadores y operandos
Regla de Prioridad.
Entidades Primitivas
Las operaciones que se encuentren entre parntesis (a + b) se ejecutaran primero. Los operadores se muestran en orden decreciente de prioridad de arriba a abajo. Los operadores del mismo grupo tienen la misma prioridad (precedencia) y se ejecutan de izquierda a derecha (asociatividad) Operador () () [] ++ -+ ! * / % + < <= > >= == != && AND || OR = Tipo Parntesis Llamada a funcin Subndice Prefijo incremento Prefijo decremento Ms unitario Menos unitario Negacin lgica unitaria Producto Divisin Resto entero Suma Menor que Menor o igual que Mayor que Mayor o igual que Igualdad Desigualdad Lgico Lgico Asignacin Asociatividad Dcha-Izda Dcha-Izda Dcha-Izda Dcha-Izda Dcha-Izda Dcha-Izda Dcha-Izda Dcha-Izda Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Izda-Dcha Dcha-Izda
Pagina 13
Captulo II
II.4 Variables
Entidades Primitivas
Variable es el trmino que se uso de manera comn para indicar que algo tiende a ser diferentes formas, expresiones o significado, en el mbito de la programacin, tomaremos como definicin: Variable: Asignacin de un valor a un campo de memoria, valor que se puede cambiar un nmero infinito de veces. El valor de la variable puede cambiarse durante la ejecucin del programa. II.4.1 Reglas para generar variables: Debe comenzar con una letra (a z) (A Z). ( No debe contener espacios. Solo podr contener el tipo de dato con el que fue declarada. Letras, dgitos y caracteres especiales (_, #, $), estn permitidos. (Opcional) Longitud mxima 8 caracteres. (Opcional) No ser el nombre de una palabra reservada de la sintaxis del lenguaje de programacin utilizado. No debe llevar acentos. Ejemplo: a a_23 nombre _hola Correcto Correcto Correcto Correcto
II.5
Constantes
Una constante es un dato numrico o alfanumrico que no cambia su valor durante la ejecucin del programa. Puede contener diferentes datos (numricos o alfanumricos), deber respetar las reglas para declarar variables. Existen algunas constantes que se respetan en casi todos las sintaxis de los lenguajes de programacin:
Pagina 14
Captulo II
Ejemplo: PI 3.1415 2.71828
Entidades Primitivas
II.6
Asignaciones
La asignacin es la accin de indicarle al programa que una variable contiene un dato determinado, esto lo hacemos de la siguiente manera. a=6 a = 6 variable signo de asignacin. valor que contendr la variable a.
II.7
Datos de Entrada
Los datos que se ingresan desde el teclado, mouse u otro dispositivo al programa se consideran datos de entrada, as como tambin los que provengan de otro modulo o de otro programa, estos debern cumplir con los requerimientos del mismo programa. A este proceso se le denomina Operacin de lectura (read)
II.8
Datos de Salida
Los datos que se obtienen como resultado de los clculos del programa, se denomina Operacin de escritura (write), y pueden salir a travs de la pantalla, a la impresora o ser enviados a otro modulo o programa.
Pagina 15
Captulo II
II.9. Ejercicios del captulo II.
Entidades Primitivas
Disear un algoritmo para calcular la longitud de un crculo en centmetros (cm). 1. Inicio (Modulo I) 2. Var: radio, n2, circunferencia, real; (Variables declaradas como Tipo Real) 3. Escribir: Ingresa el radio de la circunferencia en m.; 4. Leer: radio; 5. Circunferencia <- (2 *radio) * PI; (Clculos) 6. Fin (Dato de entrada)
1. Inicio (Mdulo II) 2. Var: pulg, real; 3. Pulg <- Circunferencia / 2.54 (calculo usando la variable circunferencia del mdulo I) 4. Mostrar: pulg; 5. Fin
Pagina 16
Captulo III
Tcnicas
Datos almacenados Llamada funcin/mdulo Conector misma pgina Conector otra pgina Decisi n Flechas
Consideraciones: 1. Todo algoritmo debe estar enmarcado con Inicio y Fin. 2. Dentro de inicio y fin se colocan todas las funciones u operaciones relacionadas con el mismo. 3. Las lneas que conectan dos smbolos debe tener solo un apunta. 4. Las flechas con doble sentido son correctas. 5. Evitar cruzar lneas y smbolos con las flechas. 6. Los smbolos se leen de arriba hacia abajo y de derecha a izquierda. 7. Los textos dentro de los smbolos sern breves y claros. En caso de necesitar ms espacio colocar como comentario fuera del smbolo. Se recomienda el uso de PSEInt Y otro programa para Diagramas DFD
Pagina 17
Captulo III
III.2. Pseudocdigo
Tcnicas
Esta tcnica es la ms usada durante el aprendizaje, ya que consta de instrucciones en nuestro lenguaje natural y las expresiones de las indicaciones son los pasos en que se resuelve el problema. Hay diferentes maneras de expresar un pseudocdigo, a veces el desarrollador, pone de su cosecha, pero aqu veremos los ms usados. Pseudocdigo.- Encabezado Descripcin del problema a resolver. Nombre del programa. En caso de que sea Modulo deber llevar Modulo Nombre 1.- Inicio.- Todos los algoritmos deben tener inicio. 2.- Variables.- Las variables se deben declarar segn el tipo que corresponda, pudiendo agruparse por tipo. (Var n1: entero; n2: Caracter;) 3.- Constantes.- Las constantes debern declararse de acuerdo al tipo y de manera independiente. (Cons R1: entero = 20) 4.- Funciones.- Conjunto de pasos agrupados bajo un nombre. Funcin: suma Var n3: entero; n3 = n1 + n2 Fin funcin suma 5.- Leer.- Guarda un dato capturado por el usuario en una variable. 6.- Escribir.- Muestra un mensaje en la pantalla. 7.- Imprimir.- Enva datos a la impresora o hacia un archivo. 8.- Llamar a.- Hace una llamada a una funcin o modulo para que se ejecute. 9.- Ciclos.- Se pueden elaborar ciclos condicionales independientes y ciclos anidados, segn lo siguiente:
Pagina 18
Captulo III
Ciclo condicional Sencillo. Si <Condicin se cumple> Entonces Hacer Funcin. Fin si Ciclo condicional Doble. Si <Condicin se cumple> Entonces Hacer Funcin. S No Funcin. Fin si Ciclos Anidados. Si <Condicin se cumple> Entonces Hacer Si <Condicin se cumple> Entonces Hacer Funcin. S No Funcin. Fin si S No Si <Condicin se cumple> Entonces Hacer Funcin. S No Funcin. Fin si Fin si
Tcnicas
Pagina 19
Captulo III
Tcnicas
10.- Iteraciones.- Las iteraciones son repeticiones de funciones o clculos que se efectan un nmero de veces. Repetir desde N hasta M Funcin Fin repetir Hacer Mientras < Condicin se cumpla> Funcin Fin hacer mientras Estas son las ms usadas en su forma general solo cabe recordar que segn la sintaxis de cada lenguaje de programacin podrn variar. 11.- Clculos u operaciones.- Son todos los clculos que correspondan al mdulo o funcin en que se este trabajando. 12.- Fin.- Todo algoritmo o modulo deber tener sealado su fin.
La numeracin debe ser de acuerdo a la longitud del Pseudocdigo y podra variar ya que los pasos se pueden repetir, eliminar o agregar. Se recomienda el programa PSEInt, para elaborar Pseudocdigos.
Pagina 20
Captulo III
III.3. Diagramas estructurados (Nassi Schneiderman)
Tcnicas
Pagina 21
Captulo III
III.5. Bottom Up
Tcnicas
La tcnica Abajo Arriba corresponde a la identificacin de los procesos y su resolucin segn van apareciendo, desarrollndose en mdulos o funciones, segn sus necesidades. Aqu prevalece el diseo a detalle de las partes ms pequeas, las cuales se van integrando hasta conseguir la solucin del problema. Las pruebas del programa pueden comenzar desde que se tienen los primero mdulos, aunque esto puede representar un problema sino se ha determinado la forma de conexin con los mdulos que le preceden o anteceden. Aunque la reutilizacin del cdigo es uno de sus mayores beneficios
Pagina 22
Captulo III
Tcnicas
Por lo tanto, entendemos que el usuario deber de ingresar dos nmeros los cuales pueden ser enteros o con decimales por lo que la variable que almacene los nmeros deber ser de tipo real, lo mismo para la variable que almacenera el valor del resultado, en caso de que el usuario no ingrese un valor, deber contemplarse como cero (0); en caso de que el usuario ingrese un caracter se deber tomar como cero (0)luego vendr la operacin de suma (+); una vez obtenido el resultado deberemos mostrar este en pantalla, indicando al usuario que lo que ve es dicho resultado. Por lo que modificaremos un poco el planteamiento del problema. Realizar un algoritmo que muestre el resultado de la suma de dos nmeros enteros o con decimales, y en caso de que el usuario no ingrese un digito o ingrese un caracter se tomara como valor 0, luego de obtener el resultado se mostrara este en pantalla. Esto nos da un planteamiento ms completo de la resolucin del problema, ello nos llevara a cumplir con las reglas del algoritmo y nos encaminara a crear un programa que satisfaga las necesidades de todos los usuarios que hagan uso del mismo.
Programacin estructurada.
Al ser independientes los mdulos pueden ser programados por diferentes personas y de manera simultnea, reduciendo el tiempo de termino.
Pagina 23
Captulo III
Tcnicas
Se considera programacin estructurada cuando se cumplen las siguientes reglas: Diseo modular. Diseo descendente. Lo mdulos contiene las estructuras de control bsicas: secuencia, seleccin y repeticin.
Pagina 24
Captulo III
III.9. Ejercicios
Tcnicas
Disear un algoritmo para calcular la longitud de un crculo en centmetros (cm). Luego tomar el resultado y convertirlo en pulgadas, mostrar ambos resultados. Actividades: a).- Redisear el problema. b).- Disear el algoritmo.
Pagina 25
Captulo IV
Estructuras
IV.1. Sintaxis
De acuerdo a Wikipedia la definicin de sintaxis es la siguiente: La sintaxis es la parte de la gramtica que estudia las reglas y principios que gobiernan la combinatoria de constituyentes sintcticos y la formacin de unidades superiores a estos, como los sintagmas y oraciones gramaticales. La sintaxis, por tanto, estudia las formas en que se combinan las palabras, as como las relaciones sintagmticas y paradigmticas existentes entre ellas. En un lenguaje de programacin la sintaxis es un conjunto de palabras e instrucciones que cada lenguaje se reserva para asignarles diferentes funciones propias, por lo que no las debemos usar. Por esto es recomendable identificarlas antes de iniciar el uso de un lenguaje de programacin. Como regla principal es obligatorio conocer la sintaxis de lenguaje de programacin.
IV.2. Estructura
Una estructura se puede definir como un sistema que nos permite representar una idea o ideas que al cumplirse ciertas condiciones ser constante. Todas las estructuras tienen un punto de partida y un punto de salida, por lo que todos los algoritmos funcionales tienen Inicio y Fin. En los algoritmos existen tres tipos de estructuras: Secuenciales, Condicionales y Cclicas.
Suma 1
Pagina 26
Captulo IV
IV.4. Estructuras condicionales
Estructuras
Un algoritmo con estructuras condicionales son aquellos que comparan los valores de un dato contra otro dato ambos almacenados en variables o constantes y dependiendo del resultado toma una decisin efectuando diversas acciones. Ya aqu se considera un algoritmo inteligente. Existen condiciones simples, en las que solamente se efecta una condicin y se puede elegir un camino. Ver imagen Condicin 1
Condicin 1
Tambin tenemos condiciones simples que efectan un comparacin, pero pueden tomar dos caminos segn el resultado. Ver imagen Condicin 2
Condicin 2
Pagina 27
Captulo IV
Estructuras
Existen condiciones mltiples donde una comparacin nos lleva a otra obteniendo diferentes acciones que se puedan ejecutar, dependiendo de cada resultado de la comparacin efectuada. Esta forma de comparar datos es ,muy til, pero hay que manejarla con precaucin ya que muchas compara muchas condiciones anidadas puede resultar confuso. Ver Condicin 3
Condicin 3
La siguiente condicin mltiple se compone de una comparacin pero con la opcin de tomar una mayor diversidad de acciones segn el resultado evaluado. Ver Condicin 4
Condicin 4
Pagina 28
Captulo IV
IV.5. Estructuras cclicas
Estructuras
Se denomina cclico a todo aquello se repite dentro un contexto definido y durante un tiempo determinado, en los algoritmos las estructuras cclicas son acciones que se ejecutan un nmero determinado de veces, a esta accin se le llama ciclo, bucle, lazo o iteracin. La primera que veremos es la estructura cclica de Repetir un nmero de veces determinadas acciones. Ver Ciclos 1 Antes de iniciar la estructura es necesario declarar una variable en 0, que servir de acumulador. Ya iniciado el ciclo se determinan las acciones que se ejecutaran, luego se acumula el valor de la variable acumulador ms uno, al final se evala cunto vale la variable acumulador y si cumple la condicin el ciclo se detiene.
Ciclo 1
Ciclo 2
Ciclo 3
Pagina 29
Captulo IV
Estructuras
El siguiente ciclo ser el repetir mientras alguna condicin se cumpla, es muy parecido al anterior solo que aqu la condicin se evala al inicio del ciclo y en la anterior se evala al final del ciclo. Ver Ciclo 2 Antes de iniciar la estructura es necesario declarar una variable en 0, que servir de acumulador. Ya iniciado el ciclo se evala la condicin y si cumple se ejecutan acciones que se determinaron, luego se acumula el valor de la variable acumulador ms uno, en caso de no cumplirse la condicin el ciclo termina.
Pagina 30
Captulo IV
IV.6. Ejercicios
1.- Disear un algoritmo que encuentre el rea de un tringulo. 2.- Disear un algoritmo que sume tres nmeros. 3.- Disear un algoritmo que muestre si el nmero ingresado es par o impar.
Estructuras
Pagina 31
Captulo V
Arreglos
V V.1.
Un arreglo es una estructura de datos que contiene informacin almacenada dentro de una sola variable, pudiendo identificar cada valor con un ndice que especfica una posicin para cada uno de ellos. Existen dos tipos de arreglos: Vectores.- Arreglos Unidimensionales. Matrices.- Arreglos Bidimensionales. Las operaciones que se pueden efectuar con los arreglos son los mismos que se efectan con las variables comunes, ms el ordenar de manera ascendente o descendente
V.2.
Vectores:
Un vector es un arreglo Unidimensional de n elementos que se almacenan en una variable. Ejemplo: vec (n) vec: (n): vec (5) De esta forma podemos almacenar 5 valores en la variable llamada vec. Es decir dentro de vec tenemos 5 casillas que podrn contener distintos valores ubicados por un ndice. vec (a, b, c, d, e) vec Valores Variable nombre de la variable. cantidad de elementos almacenados en la variable.
a b c d e Posicin (ndice) 1 2 3 4 5 En el ndice (posicin) 1 la variable vec contendr el valor a; en el ndice 2 contendr el valor b,, en el ndice 3 contendr el valor c; en el ndice 4 contendr el valor d y en el ndice 5 contendr el valor e.
Pagina 32
Captulo V
V.3. Matrices:
Arreglos
Una matriz es un arreglo bidimensional (dos dimensiones), y es necesario contar con dos ndices para acceder a los valores que contiene. Por eso se conoce como m (filas) por n (columnas). Ejemplo: vec (m, n) Vec: (m, n) nombre de la variable. cantidad de filas. cantidad de columnas. Vec (3, 3) Aqu tenemos una matriz de 3 filas por 3 columnas pudiendo almacenar 9 elementos dentro de la variable vec. Vec (a, b, c, d, e, f, g, h, i) vec Variable
Columna 1
Columna 2 b e h
Valores
a d g
Columna 3 c f i
Posicin (ndice)
El ndice (1,1) fila 1, columna1- contendr el valor a; el ndice (1,2) fila 1, columna 2contendr el valor b; el ndice (1,3) fila 1, columna 3- contendr el valor c; el ndice (2,1) fila 2, columna 1- contendr el valor d; el ndice (2,2) fila 2 columna 2- contendr el valor e; el ndice (2,3) fila 2 columna 3- contendr el valor f; el ndice (3,1) fila 3, columna 1- contendr el valor g; el ndice (3,2) fila 3, columna 2- contendr el valor h; el ndice (3,3) fila 3, columna 3- contendr el valor i.
Pagina 33
Captulo V
V.4. Ejemplos:
Arreglos
Pagina 34
Captulo VI
Derechos de Autor
Pagina 35
Captulo VII
Bibliografa
Captulo VI Bibliografa
Aguilar, L. J. (2002). Fundamentos de Programacion. Madrid: Mc Graw Hill. Buritica, O. I. (1999). La Esencia de la Lgica de Programacin Bsico. Pereira Colombia: Papiro en formato de 21 x 28 cm. . Hernandez, M. L. (2010). Diseo Estructrado de Algoritmos. Teuxtepe (Mexico).
Pagina 36