






Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Capitulo 1 de la Programación introducida
Typology: Study Guides, Projects, Research
1 / 11
This page cannot be seen from the preview
Don't miss anything!







1.1. Definición 1.1.1. Algoritmo Un algoritmo es la representación de la solución paso a paso de un problema dado. Las instrucciones se escriben en orden lógico, hasta declarar o detectar el fin del mismo. Se considera que un algoritmo es preciso porque implica el orden de realización de cada uno de los pasos; definido pues si se sigue dos veces se obtiene el mismo resultado; y finito porque al tener un número determinado de instrucciones, implica que debe tener por lo menos un final. Reglas para definir la Estructura de un Algoritmo 1) El nombre del algoritmo debe iniciar con la palabra Algoritmo y el nombre dado al algoritmo. 2) Para definir bloques de instrucciones, utilizar la llave de apertura ({ ) para indicar el inicio y la llave de cierre (}) para finalizar. 3) Cada instrucción debe terminar con punto y coma (;). 4) Los comentarios se realizarán de dos formas: // Comentario de una sola línea o /* */ para comentario de bloques. 5) Comentar o Identificar las áreas básicas de la estructura de un algoritmo. a. Bloque Declarativas de Constantes b. Bloque Declarativas de Variables c. Bloque de Instrucciones 6) Las instrucciones de leer, imprimir, estructuras de alternativas y repetitivas se escribirán en minúscula. Ejemplo: Algoritmo PrimerPrograma
// Mi primer programa imprimir (“Hola Mundo”);
Cabe señalar que otra forma de representar la solución de un problema dado, es a través del diagrama de flujo. En este caso, la lógica se representa paso a paso utilizando símbolos gráficos que nos indican las acciones a ejecutar. Por ejemplo: 1.1.2. Programa Comúnmente un programa suele definirse como un conjunto de instrucciones ordenadas en forma lógica. Si nos referimos a un programa informático, se define de igual manera como un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software , que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital. Los desarrolladores de software, son los profesionales encargados de escribir el código fuente de cada uno de estos programas. Tipo de Programa (Fuente, Objeto) Un programa fuente es aquel que nos permite escribir un algoritmo mediante un lenguaje formal. Es decir, entendible por el ser humano. Razón por la cual al código desarrollado se le llama código fuente. El concepto de " Programa Fuente " se relaciona de forma directa con los lenguajes de programación y las aplicaciones creadas, porque precisamente "Programa Fuente" describe el argumento escrito por el desarrollador que da inicio al desarrollo de su obra de software. De este modo, el paso siguiente está dado por la Compilación de lo escrito, de tal forma que la máquina sea capaz de entenderlo y “correrlo” o “ejecutarlo”, dando lugar a un archivo ejecutable. (Si le interesa trabajar con esta técnica, hable con el profesor del curso)
Reglas de Escritura (buenas prácticas de programación): Existen una serie de reglas básicas que todo desarrollador de software debería seguir para elaborar algoritmos: 1) El nombre del algoritmo inicia con letra en mayúscula y si está compuesta por dos o más palabras, la primera letra de cada palabra debe ser en mayúscula y sin espacios en blanco. Estilo PascalCase. 2) Utilizar minúscula para los nombres de variables y mayúscula cerrada para las constantes. 3) Los nombres de las funciones deben iniciar en minúscula y si está compuesta por dos o más palabras, la primera letra de la primera palabra ira en minúscula y luego la primera letra de cada palabra debe ser en mayúscula y sin espacios en blanco. Estilo camelCase. 4) Los nombres de funciones deben iniciar con un verbo para indicar la acción de la función. 5) Emplear indentación en las estructuras de control para mejorar la legibilidad. 6) Utilizar el símbolo de igual (=) para asignar los valores. 7) Utilizar == como operador de relación para establecer una igualdad. 8) Utilizar != como operador de relación para establecer una desigualdad o distinto de. 9) Para los contadores, se debe utilizar el formato contador = contador + 1. 10) Los nombres de tipo de datos a utilizar son: entero, flotante, cadena, caracter. 11) Emplear identificadores significativos para constantes, variables, funciones y parámetros. 12) Escribir expresiones sencillas, utilizando siempre los paréntesis adecuados. 13) No repetir pasos o instrucciones iguales en distintas partes. 14) No usar la misma variable para distintos propósitos.
Ejemplo: Calcular el área de un círculo, teniendo como entrada el valor del radio. Algoritmo AreaCirculo
// Bloque Declarativas de Constantes – (Si aplica) constante flotante PI = 3.1416; // Bloque Declarativas de Variables flotante radio, circulo; // Bloque de instrucciones imprimir (“Ingresa el valor del radio: ”); leer (radio); circulo = PI * (radio * radio); imprimir (“El area del circulo es: ”, circulo);
1.2. Conceptos de Paradigmas de Programación Un paradigma de programación representa fundamentalmente enfoques diferentes para la construcción de soluciones a problemas y por consiguiente afectan al proceso completo de desarrollo de software. 1.2.1. Programación Estructurada La programación estructurada es un paradigma de programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora recurriendo únicamente a subrutinas y/o funciones y tres estructuras de control básicas: Secuencial Alternativas o de selección ( if y switch ) Repetición o iteración ( for y while ) Es importante señalar que se considera innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a código espagueti , mucho más difícil de seguir y de mantener, y fuente de numerosos errores de programación. Ventajas de la programación estructurada: Como la programación estructurada está compuesta por segmentos bien definidos, los programas son más simples, rápidos y fáciles de entender, pueden ser leídos de forma secuencial y se pueden hacer las correcciones o modificaciones después de haber concluido.
1.3. Etapas para la Resolución de Problemas por computadora 1.3.1. Definición del Problema La Definición del Problema es el primer paso en la planeación de un proyecto de programación y consiste en describir un enunciado breve del problema que se solucionará y de las restricciones que existen en su resolución. Es importante subrayar los verbos que encontramos, ya que estos nos indican la acción que debemos realizar. 1.3.2. Análisis y Diseño del Problema El análisis del problema nos conduce al diseño detallado de la solución del problema. Nos encontramos, en su orden, con tres puntos importantes: S alida (Saber qué es lo que quiero conseguir o hasta donde quiero llegar. ¿Cuál es el resultado de este algoritmo? o ¿Qué pide la definición del problema como resultado?). E ntrada (Determinar con qué datos cuento para trabajar. ¿Qué datos me da el problema?, ¿Qué datos voy a ingresar? o ¿Qué variables necesito?). P roceso (Cómo lo voy a hacer y sobre todo tener pendiente las condiciones o restricciones que presenta el problema, si es que las hay. ¿Cuáles operaciones debemos realizar para obtener la salida?). 1.3.3. Programación 1.3.3.1. Algoritmo o representación de la lógica La representación de la lógica no es más que la escritura de las instrucciones que resuelven el problema, dadas en un orden lógico. Esta representación puede darse por medio de un Algoritmo o Diagrama de Flujo, entre otros. Ejemplo: Calcular el área de un círculo, teniendo como entrada el valor del radio. Algoritmo AreaCirculo { // Bloque Declarativas de Constantes – (Si aplica) constante flotante PI = 3.1416; // Bloque Declarativas de Variables flotante radio, circulo; // Bloque de instrucciones imprimir (“Ingresa el valor del radio: ”); leer (radio); circulo = PI * (radio * radio); imprimir (“El area del circulo es: ”, circulo); }
1.3.3.2. Prueba de escritorio Una prueba de escritorio es la comprobación de la lógica de un algoritmo. Para desarrollar esta prueba, es necesario que usted tome la posición del procesador de la computadora y realice lo siguiente:
En primera instancia, se deben colocar en una primera línea la lista de constantes, si las hay, y las variables con los valores que recibe. Luego, a medida que avanza la ejecución de las instrucciones, en forma secuencial, cada variable va recibiendo el valor respectivo y se muestra en pantalla lo que señala la instrucción de impresión o salida. Si esta prueba de escritorio genera resultados satisfactorios, quiere decir que el algoritmo posee una lógica adecuada, en caso contrario tendrá que corregir el algoritmo que ha presentado. Debe realizar tantas pruebas de escritorio como sean necesarias, hasta cumplir con todas las rutas que presente el problema y por supuesto que usted esté satisfecho con el resultado. Prueba de Escritorio Constantes en memoria Variables en memoria^ Pantalla PI radio circulo 3.1416 5 78.54 I El area del circulo es:ngresa el valor del radio: 5 78. 6.5 132.73 Ingresa el valor del radio: 6.5 El area del circulo es: 132. 4.8 72. Ingresa el valor del radio: 4. El area del circulo es: 72.
El Software que utiliza, a través de su editor, le da la opción para compilar el programa fuente: Ejecución. Consiste en el trabajo que realiza la computadora, procesando cada una de las instrucciones que contiene el programa. Debe emplearse una variedad de datos de entrada, conocidos en esta fase como datos de prueba , para determinar si el programa tiene errores. Esta variedad de datos de prueba debe incluir: Valores normales de entrada Valores extremos de entrada que comprueben los límites del programa Valores que comprueben aspectos especiales del programa. De igual manera, se presenta el ícono que le permite ejecutar el programa: Presentación de la salida:
1.3.3.4.1. Tipos de Errores Cuando se realizan las acciones de compilar/ejecutar, se pueden presentar diferentes tipos de errores a los cuales se les debe prestar especial atención antes de dar por terminado un determinado programa. Estos tipos de errores son: Errores de compilación : Estos errores son errores de sintaxis que ocurren por el incumplimiento de las reglas sintácticas del lenguaje como, por ejemplo, un comando especial mal escrito o una instrucción incompleta. Puede darse además que las variables que utilice el programador, no estén debidamente declaradas o que las llamadas que haga a programas externos no estén bien escritas y no pueda hacer el enlace correspondiente. El compilador despliega una lista de todos los errores encontrados. Es necesario que el programa tenga cero (0) errores para que se genere el programa objeto correspondiente. Errores de ejecución : Estos errores se producen por instrucciones que la computadora comprende sintácticamente pero que no puede ejecutar, por ejemplo, la división por cero o el cálculo de raíces cuadradas con valores negativos. En ambos casos, se detiene la ejecución del programa y se imprime el correspondiente mensaje de error. Errores de lógica : Consisten en resultados incorrectos obtenidos por el programa. Es necesario revisar completamente su programa, si es posible desde el algoritmo; codificar, compilar y ejecutar nuevamente hasta que el resultado sea satisfactorio. 1.3.4. Documentación La documentación de un programa consta de las descripciones de los pasos a seguir en el proceso de resolución de un problema. La importancia de la documentación debe ser destacada por su decisiva influencia en el producto final. Los programas deficientemente documentados son difíciles de leer, más difíciles de depurar y casi imposibles de mantener y modificar.