Algoritmos en PSeInt.pdf
Short Description
Download Algoritmos en PSeInt.pdf...
Description
Algoritmos en PSeInt
Jéfferson Beltrán Morales
Algoritmos en PSeInt
Algoritmos en PSeInt
Jéfferson Beltrán Morales
2
3
Jéfferson Beltrán Morales
Algoritmos en PSeInt. Todos los derechos reservados. No está permitida la reproducción total o parcial de este libro, ni su tratamiento informático, ni la transmisión de ninguna forma o por cualquier medio, ya sea electrónico, mecánico, por fotocopia u otros métodos, sin el permiso previo y por escrito del titular del Copyright. Copyright © 2015. Jéfferson Beltrán Morales. ISBN- 978-9942-21-557-4 Septiembre 2015 Quito – Ecuador
Algoritmos en PSeInt
CONTENIDO INTRODUCCIÓN. .............................................................................................. 6 OBJETIVO.......................................................................................................... 6 EL LIBRO COMO HERRAMIENTA DOCENTE.................................................. 6 ORGANIZACIÓN DEL LIBRO. ........................................................................... 6 ACERCA DEL AUTOR. ...................................................................................... 7 PARTE I: ALGORITMOS.................................................................................... 8 1
ALGORITMOS. ............................................................................................ 8 1.1
CARACTERÍSTICAS DE LOS ALGORITMOS. ..................................... 8
1.2
PARTES DE UN ALGORITMO. ............................................................ 8
1.2.1 DATOS Y TIPOS DE DATOS. .............................................................. 8 1.2.2 CONSTANTES Y VARIABLES. ............................................................ 9 1.2.3 SENTENCIAS O INSTRUCCIONES. .................................................... 9 1.2.4 OPERADORES Y EXPRESIONES. ...................................................... 9 1.2.5 ESTRUCTURAS DE CONTROL. ........................................................ 11 1.3 1.4
PASOS PARA CREAR UN ALGORITMO. .......................................... 11 REPRESENTACIÓN GRÁFICA DE LOS ALGORITMOS. ..................... 12
1.4.1 DESCRIPCIÓN NARRADA. ................................................................ 12 1.4.2 DIAGRAMAS DE FLUJO O FLUJOGRAMAS. .................................... 12 1.4.3 PSEUDOCÓDIGO............................................................................... 14 1.5
PSEINT. .............................................................................................. 14
PARTE II: ALGORITMOS EN PSeInt. .............................................................. 16 2
PROGRAMACIÓN ESTRUCTURADA....................................................... 16 2.1
ESTRUCTURA SECUENCIAL. ........................................................... 23
2.2
ESTRUCTURAS SELECTIVAS O CONDICIONALES. ....................... 26
2.2.1 ESTRUCTURA SELECTIVA “SI-ENTONCES”. .................................. 27 2.2.1.1
EXPRESIONES LÓGICAS. .......................................................... 31
2.2.1.2
ESTRUCTURAS ANIDADAS........................................................ 35
2.2.2 ESTRUCTURA DE SELECCIÓN MÚLTIPLE “SEGÚN”...................... 40 2.3
ESTRUCTURAS REPETITIVAS O ITERATIVAS. .............................. 45
2.3.1 ESTRUCTURA REPETITIVA “PARA”. ................................................ 46
4
Jéfferson Beltrán Morales
5
2.3.1.1
CONTADOR. ................................................................................ 47
2.3.1.2
ACUMULADOR O TOTALIZADOR. ............................................. 47
2.3.2 ESTRUCTURA ITERATIVA “MIENTRAS”. ......................................... 50 2.3.2.1
CENTINELAS. .............................................................................. 53
2.3.2.2
BANDERAS. ................................................................................. 55
2.3.3 ESTRUCTURA ITERATIVA “REPETIR”. ............................................ 58 2.4
ESTRUCTURA DE DATOS Y ARREGLOS............................................ 63
2.4.1 ESTRUCTURA DE DATOS. ............................................................... 64 2.4.2 ARREGLOS. ....................................................................................... 64 2.4.2.1
ARREGLO UNIDIMENSIONAL. ................................................... 68
2.4.2.1.1
PARTES DE UN ARREGLO. .................................................... 68
2.4.2.1.2
OPERACIONES CON ARREGLOS. ......................................... 69
2.4.3 ARREGLO BIDIMENSIONAL. ............................................................. 78 2.5
MODULARIDAD. .................................................................................... 82
2.5.1 PROCEDIMIENTOS Y FUNCIONES. ................................................. 83 2.5.1.1
IMPLEMENTACIÓN DE PROCEDIMIENTOS Y FUNCIONES..... 84
2.6
RECURSIVIDAD. ................................................................................. 102
2.7
ESTILO DE PROGRAMACIÓN. ........................................................... 108
BIBLIOGRAFÍA. ............................................................................................. 110
Algoritmos en PSeInt
ALGORITMOS EN PSeInt INTRODUCCIÓN. Este libro muestra al estudiante y futuro programador, los conceptos básicos y fundamentos de los algoritmos computacionales, mediante el diseño y elaboración de algoritmos básicos y sencillos que se presentan comúnmente en el proceso de aprendizaje, utilizando técnicas algorítmicas estructuradas y modulares, como pseudocódigo y diagramas de flujo y herramientas especializadas, y de esta manera entender de manera más sencilla el fascinante mundo de la algoritmia y programación. Ya que un programador, es decir, la persona que diseña y construye sistemas computacionales o aplicaciones de software, antes de comenzar a interactuar con la computadora, tiene que aprender a pensar diferente a las demás personas, para poder analizar y resolver problemas mediante aplicaciones de software, los cuales primero debe plasmarlos en papel o en alguna herramienta de software específica para ello como PSeInt, para luego implementarlos en un lenguaje de programación.
OBJETIVO. El objetivo del libro es servir como material de lectura y estudio en un curso introductorio a la programación, mostrando los fundamentos de los algoritmos computacionales mediante técnicas de programación estructurada y modular, usando PSeInt como herramienta para el diseño de algoritmos en pseudocódigo y/o diagramas de flujos.
EL LIBRO COMO HERRAMIENTA DOCENTE. El libro es una guía y aporte sobre los fundamentos de algoritmos computacionales para los docentes de Programación I, de las carreras de Ingeniería Informática, Ingeniería Matemática, Ingeniería en Computación Gráfica e Ingeniería en Diseño Industrial de la Universidad Central del Ecuador. Puede ser extendido su uso en otras materias introductorias a la programación y algoritmos, pues las bases de la algoritmia son similares, está pensando su uso para la mitad de un semestre de un primer curso de programación, no pretende ser un manual de PSeInt, sino una guía práctica para el diseño de algoritmos mediante ejemplos, usando pseudocódigo y diagramas de flujo en PSeInt, mediante técnicas de programación estructurada y modular. La bibliografía principal se tomó del sitio web del desarrollador de PSeInt [14].
ORGANIZACIÓN DEL LIBRO. El libro se dividió en dos partes para efecto de un estudio gradual y de fácil lectura. Se inicia enunciando conceptos básicos sobre algoritmos
6
7
Jéfferson Beltrán Morales
computacionales, para luego ponerlos en práctica en la segunda parte, con el diseño de algoritmos usando técnicas de programación estructurada y modular. Se incluyen ejemplos en pseudocódigo y diagramas de flujo escritos en PSeInt.
ACERCA DEL AUTOR. El autor tiene 15 años de experiencia como docente universitario en materias relacionadas a la matemática aplicada y al desarrollo de software. En el mismo número de años, es responsable del Desarrollo de Software y de la Gestión de Tecnología de Información y Comunicaciones en empresas privadas.
Algoritmos en PSeInt
PARTE I: ALGORITMOS.
1 ALGORITMOS. Un algoritmo es un método para resolver un problema mediante una serie de pasos precisos, definidos y finitos. Es un conjunto de reglas para resolver determinado problema, describiendo de forma lógica su solución. Cada una de las acciones de que consta un algoritmo computacional se denomina sentencia (instrucciones o acciones) y éstas deben ser escritas en términos de cierto lenguaje comprensible para el computador, que es el lenguaje de programación. 1.1 CARACTERÍSTICAS DE LOS ALGORITMOS. Las características que debe satisfacer un algoritmo computacional son:
Entrada. Son cero o más parámetros (datos) que ingresan al algoritmo para ser usados dentro de él. Salida. Al menos un dato es producido como salida del algoritmo. Exactitud/precisión. Cada instrucción debe ser clara y sin ambigüedad (hacen lo que deben hacer). Finito. Terminará después de un número finito de pasos. Eficiente. Cada instrucción puede ser verificada por una persona con una prueba manual que satisfaga los requerimientos planteados por el problema. Repetible. Dada una misma entrada, siempre debe dar la misma salida.
1.2 PARTES DE UN ALGORITMO. Los algoritmos computacionales se construyen utilizando un pseudolenguaje que usa elementos simples para su escritura, centrando la atención en los conceptos de la algoritmia computacional, antes que en la dificultad propia de un lenguaje de programación. Entre ellos se tienen: 1.2.1 DATOS Y TIPOS DE DATOS. Las diferencias piezas de información con las que un algoritmo computacional trabaja se conoce colectivamente como “datos”. Todos los datos tienen un “tipo” asociado con ellos, que determina la naturaleza del conjunto de valores que puede tomar. Por ejemplo, un dato puede ser un simple carácter, tal como ‘B’, un valor entero como 36, un número real como 5.75, una cadena de caracteres como “Hola Mundo”, un valor de verdad como Verdadero o Falso, entre otros.
8
Jéfferson Beltrán Morales
9
1.2.2 CONSTANTES Y VARIABLES. Los algoritmos computacionales y programas necesitan almacenar datos temporalmente para poder procesarlos y generar así la salida esperada. Estos datos, a grandes rasgos, pueden clasificarse en dos grupos:
A un dato cuyo valor no puede cambiar (se mantiene constante) durante la ejecución de un programa se lo denomina Constante. Las constantes deben ser declaradas y asignadas un valor antes de su utilización. En cambio, los datos de un programa cuyo valor puede cambiar durante la ejecución del mismo se conocen como Variables. Una variable es, en realidad, una posición o localidad de memoria donde se puede almacenar información, tiene un nombre (Nombre de la Variable), y almacena un valor (Valor de la Variable). Existen tantos tipos de variables como tipos de datos diferentes.
1.2.3 SENTENCIAS O INSTRUCCIONES. Las sentencias describen acciones algorítmicas que pueden ser ejecutadas. En general, las sentencias se clasifican en ejecutables (especifican, por ejemplo, operaciones de cálculos aritméticos y entradas/salidas de datos) y no ejecutables (no realizan acciones concretas ni afectan a la ejecución del programa, sino que ayudan a su legibilidad) como la declaración de variables. Las sentencias se clasifican, según su tipo y número, en:
Sentencias simples: Son sentencias que no contiene ninguna otra sentencia. El ejemplo más típico de sentencia simple, es la sentencia de asignación, la cual se utiliza para almacenar un valor en una variable. La operación de asignación suele representarse en pseudocódigo con el símbolo ‘’, para denotar que el valor situado a su derecha se almacena en la variable situada a la izquierda: o variable Valor o Ejemplo: suma0 (la asignación sólo será válida si el valor es válido para el tipo de dato definido para la variable). Otros ejemplos de sentencias simples son las de entrada/salida.
Sentencias estructuradas: Son sentencias compuestas de otras sentencias que se ejecutan en secuencia, condicionalmente o repetidamente.
1.2.4 OPERADORES Y EXPRESIONES.
Algoritmos en PSeInt
Las variables y constantes se pueden procesar utilizando operaciones y funciones adecuadas para sus tipos. Se denomina expresión a un conjunto de variables y/o constantes unidas por operadores. Un operador es un símbolo o palabra que sirve para indicar la realización de una acción entre uno o dos valores que son llamados operandos. Si en una expresión existe más de una operación, debe tenerse en cuenta que existen una serie de reglas para definir la prioridad en la que éstas se ejecutarán. Por este motivo, se suele utilizar paréntesis para establecer la prioridad de aplicación de los operandos. Existen diversos tipos de operadores, por ejemplo:
Aritméticos: Son apropiados únicamente para tipos de datos numéricos. Ejemplos de operadores aritméticos son: “ + ”, “ - ”, “ * ” y “ / ”, etc., los cuales permiten obtener el resultado de la suma, la resta, la multiplicación y la división de dos datos respectivamente. Su resultado es un número. De relación: Los operadores de relación (o relacionales), se utilizan para expresar condiciones y describen una relación entre dos valores. Ejemplos de operadores relacionales son: “ < ” (Menor que), “ >” (Mayor que), “ = ” (Igual a) y “ ” (Distinto a), etc. Su resultado es un valor de verdad. Los operadores aritméticos y los relacionales se utilizan de la siguiente forma: variable o constante operador variable o constante. Por ejemplo: a + b, c/d, a
View more...
Comments