Full Transcript

BD CONCEPTOS GENERALES Introduccion a los Sistemas de Computo Universidad Mariano Gálvez Definición de lenguaje de programación El lenguaje de programación es la combinación de símbolos y reglas que permiten la elaboración de programas con los cuales la computadora...

BD CONCEPTOS GENERALES Introduccion a los Sistemas de Computo Universidad Mariano Gálvez Definición de lenguaje de programación El lenguaje de programación es la combinación de símbolos y reglas que permiten la elaboración de programas con los cuales la computadora puede realizar tareas o resolver problemas de manera eficiente. Definición de lenguaje de programación Los lenguajes de programación se clasifican en: 1. Lenguaje máquina. Las instrucciones son directamente entendibles por la computadora y no necesitan traductor para que la CPU pueda entender y ejecutar el programa. Utiliza un código binario (0 y 1), se basa en bits (abreviatura inglesa de dígitos binarios). 2. Lenguaje de bajo nivel (ensamblador). Las instrucciones se escriben en códigos alfabéticos conocidos como mnemotécnicos. 3. Lenguaje de alto nivel. Es semejante al lenguaje humano (en general en inglés), lo que facilita la elaboración y comprensión del programa. Por ejemplo: C, C++, Java, Phyton, etcétera. Definición de algoritmo Se denomina algoritmo al conjunto de pasos ordenados y finitos que permiten resolver un problema o tarea específica. Los algoritmos son independientes del lenguaje de programación y de la computadora que se vaya a emplear para ejecutarlo. Todo algoritmo debe ser: 1. Finito en tamaño o número de instrucciones (tiene un primer paso y un último paso) y tiempo de ejecución (debe terminar en algún momento). Por lo tanto, debe tener un punto particular de inicio y fin. 2. Preciso. Debe tener un orden entre los pasos. 3. Definido. No debe ser ambiguo (dobles interpretaciones); si se ejecuta el mismo algoritmo el resultado siempre será el mismo, sin importar las entradas proporcionadas. 4. General. Debe tolerar cambios que se puedan presentar en la definición del problema. Definición de algoritmo Toda actividad que realizamos la podemos expresar en forma de algoritmo. Existen dos tipos de algoritmos, los que se desarrollan para ser ejecutados por una computadora, llamados algoritmos computacionales, y los que realiza el ser humano, es decir, algoritmos no computacionales; como ejemplos de éstos tenemos: 1. Cambiar un neumático (llanta) de un automóvil. 2. Preparar un pastel. 3. Calcular el área de un triángulo. Definición de programa de computadora Existen diferentes conceptos: 1. Es un algoritmo desarrollado en un determinado lenguaje de programación, para ser utilizado por la computadora; es decir, es una serie de pasos o instrucciones ordenadas y finitas que pueden ser procesadas por una computadora, a fin de permitirnos resolver un problema o tarea específica. 2. Secuencia de instrucciones mediante las cuales se ejecutan diferentes acciones de acuerdo con los datos que se desee procesar en la computadora. 3. Expresión de un algoritmo en un lenguaje preciso que puede llegar a entender una computadora. Etapas o pasos en la creación de un programa Definición del problema Esta fase la proporciona el enunciado del problema, el cual requiere una definición clara y precisa (no debe ser ambiguo). Es importante que se entienda perfectamente lo que pretendemos que haga la computadora para poder continuar con la siguiente etapa. Análisis del problema Una vez que se ha comprendido lo que se desea que la computadora haga, la etapa de análisis es muy importante ya que en ésta se identifican tres factores indispensables: 1. Qué información se necesita para obtener el resultado deseado (datos de entrada). 2. Qué información se desea producir (datos de salida). 3. Los métodos y fórmulas que se necesitan para procesar los datos y producir esa salida. Etapas o pasos en la creación de un programa Diseño y técnicas para la formulación de un algoritmo La etapa de diseño se centra en desarrollar el algoritmo basándonos en las especificaciones de la etapa del análisis; podemos representar un algoritmo mediante el diagrama de flujo o el pseudocódigo. Diagrama de flujo Un diagrama de flujo es la representación gráfica de un algoritmo; dicha representación gráfica se lleva a cabo cuando varios símbolos (que indican diferentes procesos en la computadora) se relacionan entre sí mediante líneas que indican el orden en que se deben ejecutar las instrucciones para obtener los resultados deseados. Los símbolos utilizados han sido reglamentados por el Instituto Nacional de Normalización Estadounidense (ANSI, American National Standards Institute). Etapas o pasos en la creación de un programa Características de los diagramas de flujo: Todo diagrama debe tener un inicio y un fin. No se especifica la declaración de variables. Se deben usar solamente líneas de flujo horizontales y/o verticales. Se debe evitar el cruce de líneas utilizando los conectores. Se deben usar conectores sólo cuando sea necesario. No deben quedar líneas de flujo sin conectar. Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha. Se debe evitar la terminología de un lenguaje de programación o máquina. Los comentarios se deben utilizar ya sea al margen o mediante el símbolo gráfico comentarios para que éstos sean entendibles por cualquier persona que lo consulte. Si el diagrama abarca más de una hoja es conveniente enumerarlo e identificar de dónde viene y a dónde se dirige. Sólo los símbolos de decisión pueden y deben tener más de una línea de flujo de salida. Etapas o pasos en la creación de un programa Diagrama de flujo Símbolos gráficos más utilizados para dibujar diagramas de flujo de algoritmos Etapas o pasos en la creación de un programa Pseudocódigo El pseudocódigo es la combinación del lenguaje natural (español, inglés o cualquier otro idioma), símbolos y términos utilizados dentro de la programación. Se puede definir como un lenguaje de especificaciones de algoritmos. El pseudocódigo se creó para superar las dos principales desventajas del diagrama de flujo: es lento de crear y difícil de modificar sin un nuevo redibujo. Por otra parte, el pseudocódigo es más fácil de utilizar ya que es similar al lenguaje natural. Al contrario de los lenguajes de programación de alto nivel no tiene normas que definan con precisión lo que es y lo que no es pseudocódigo, por lo tanto, varía de un programador a otro. Etapas o pasos en la creación de un programa Codificación En la etapa de codificación se transcribe el algoritmo definido en la etapa de diseño en un código reconocido por la computadora; es decir, en un lenguaje de programación; a éste se le conoce como código fuente. Etapas o pasos en la creación de un programa Prueba y depuración La prueba consiste en capturar datos hasta que el programa funcione correctamente. A la actividad de localizar errores se le llama depuración. Existen dos tipos de pruebas: de sintaxis y de lógica. Las pruebas de sintaxis se ejecutan primero, son las más sencillas y las realiza el compilador del programa cada vez que se ejecuta el programa hasta que el código no presente errores, es decir que la sintaxis que requiere el lenguaje sea la correcta, de lo contrario el propio compilador va mostrando los errores encontrados para que se modifiquen y se pueda ejecutar el código; estos errores pueden ser falta de paréntesis, o puntos y comas o palabras reservadas mal escritas. Etapas o pasos en la creación de un programa Prueba y depuración Las pruebas de lógica son las más complicadas ya que éstas las realiza el programador; consisten en la captura de diferentes valores y revisar que el resultado sea el deseado, es decir el programador tendría que modificar el código hasta que el programa funcione correctamente. Etapas o pasos en la creación de un programa Documentación Es la guía o comunicación escrita que permite al programador o al usuario conocer la funcionalidad del programa. La documentación sirve para que el código fuente sea más comprensible para el programador o para otros programadores que tengan que utilizarlo, así como para facilitar futuras modificaciones (mantenimiento). Hay dos tipos de documentación: Interna. Se generan en el mismo código y generalmente es mediante comentarios. Externa. Son los manuales y es independiente al programa. También puede ser la ayuda en el mismo software. Etapas o pasos en la creación de un programa Mantenimiento Se dice que un programa no se termina al 100%, ya que es necesario hacer algún cambio, ajuste o complementación para que siga funcionando correctamente; para llevarlo a cabo se requiere que el programa esté bien documentado. Todos los programas tienen actualizaciones, por lo que surgen versiones diferentes. Por ejemplo: Windows, Linux MacOS. Diagramas de Flujo Introduccion a los Sistemas de Computo Universidad Mariano Gálvez Estructura de control secuencial Es la estructura más sencilla ya que el programador identifica los datos de entrada, los procesa y muestra o imprime los datos de salida. Estructura de control selectiva o alternativa Es una estructura con una sola entrada y una sola salida en la cual se realiza una acción (una o varias instrucciones) de entre varias, según una condición; o se realiza una acción según el cumplimiento o no de una determinada condición. La condición puede ser simple o compuesta. Los programas, para un mejor funcionamiento y para poder realizar un número mayor de tareas, deben permitir emplear acciones alternativas a fin de poder elegir una de ellas cuando la situación lo requiera. Por lo tanto, la ejecución de una línea o grupos de líneas del programa depende de si cumplen o no una condición. Estructura de control selectiva o alternativa Toma de Decisiones: La instrucción si (if) nos permite tomar decisiones, podemos hacer una pregunta y la contestación solo puede ser verdadera o falsa. La expresión condicional: La condición es una expresión booleana, verdadera o falsa. Existen tres tipos de estructuras de control selectivas: Simple if Doble if-else Multiple switch-break Estructura de control selectiva o alternativa Bloque de sentencias o instrucción compuesta: Pseudocodigo inicio inst 1 inst 2 inst 3 …….. inst n fin Estructura de Control Selectiva simple si (if): Estructura de control que dirige las acciones a ejecutar una o más instrucciones solamente si la condición es verdadera. Si la condición es falsa no realiza ninguna acción. 1. Si se requiere una sola instrucción, cuando se cumpla la condición se representa de la siguiente manera. Diagrama de Flujo Pseudocodigo Si (condicion) F V Ins 1 condicion Inst 1 Estructura de Control Selectiva simple si (if): Si se require bloque de instrucciones, cuando se cumpla la condición se representa de la siguiente manera. Diagrama de Flujo Pseudocodigo Si (condicion) inicio F V Ins 1 condicion Ins 2 Inst 3 Inst 1 Inst 2 fin Inst 3 Estructura de Control Selectiva doble si/si-no (if/else): Estructura de control que dirige el programa para ejecutar una acción si la condición es verdadera, y otra acción en caso de que sea falsa. Las instrucciones deberán ser diferentes en cada caso, ya que si fueran iguales no se requeriría una estructura selectiva, con la estructura secuencial se resolvería el problema. Existen dos formas de representarlo, dependiendo del número de instrucciones que se desean realizar si la condición se cumple o no. Estructura de Control Selectiva doble si/si-no (if/else): Si la condición se cumple se realizan las instrucciones 1 y 2, pero si no se cumplen se realizaran las instrucciones 3 y 4 Diagrama de Flujo Pseudocodigo Si (condicion) inicio F V Inst 1 Inst 2 condicion fin Inst 1 sino Inst 3 Inst 4 Inst 2 inicio fin Estructura de Control Selectiva Según una calificación, imprimir si esta es aprobada. Estructura de Control Selectiva Según una calificación, imprimir si esta es aprobada. Estructura de Control Selectiva Calcule el promedio de un alumno que cursó tres materias el semestre anterior. Si su promedio es mayor que 95 se le va a asignar una calificación de 100. Imprimir cuál fue la calificación promedio del alumno. Estructura de Control Selectiva Múltiple Switch Esta estructura selecciona entre varias posibilidades, dependiendo del valor de la expresión. Cuando en la estructura si (if ) todas las condiciones utilizan la igualdad de una variable determinada con constantes predefinidas, se puede utilizar la instrucción segun_sea (switch), en dicha instrucción existen más de dos opciones. La estructura segun_sea (switch) evalúa una expresión que puede tomar n valores distintos; según con cuál de estos valores coincida, se ejecutarán ciertas acciones, es decir, el programa o algoritmo seguirá un determinado camino entre los n posibles. Dicha expresión sólo acepta valores enteros o caracteres para entrar a la opción y el operador de relación es el igual. Estructura de Control Selectiva Múltiple Switch Estructura de Control Selectiva Ejemplo: Imprimir a que día de la semana corresponde un numero Estructura de Control Selectiva Ejemplo: Imprimir a que día de la semana corresponde un numero Estructura de Control Repetitiva Mientras (While) Al ejecutarse la instrucción mientras (while), se evaluará la expresión booleana suministrada en los paréntesis (condición), y si su valor es verdadero (distinto de cero) se realizará el ciclo o bucle (una o varias instrucciones). Después, la condición es reevaluada y se procede de la misma manera. Estructura de Control Repetitiva Mientras (While) Ejemplo: Estructura de Control Repetitiva Mientras (While) Ejemplo: Estructura de Control Repetitiva Mientras (While) Ejemplo: Estructura de Control Repetitiva desde (for) “Desde” (for) es la estructura repetitiva y simple de manejar, ya que repite un conjunto de instrucciones un numero determinado de veces. Una de sus aplicaciones principales son los arreglos. Estructura de Control Repetitiva desde (for) Se debe conocer por anticipado el valor de la variable inicial y final antes de entrar al ciclo. La condición se evalúa antes del bloque de instrucciones. Si la condición es verdadera se ejecuta el bloque, y si es falsa se sale y pasa el control a la instrucción siguiente al bloque. No se debe cambiar el valor de la(s) variable(s) de control, del valor inicial ni del valor final dentro del ciclo. Se puede incrementar o decrementar la variable de control según se requiera. El incremento o decremento de la variable de control es automático. Sólo si existe más de una instrucción dentro del ciclo desde se necesita el inicio-fin ({-}). Puede tener una o varias expresiones de inicialización, de condición y de incremento; estas expresiones se separan mediante comas en pseudocódigo y con puntos y comas en lenguaje C. Puede tener alguna o todas las expresiones vacías: desde (,,)-for ( ; ; ). Si la condición está vacía, tenemos un bucle infinito. Estructura de Control Repetitiva desde (for) Ejemplo 1. Imprimir en pantalla los primeros 10 números enteros positivos. Estructura de Control Repetitiva desde (for) Ejemplo 2. Calcule la sumatoria de todos los números entre 1 y el 15, e imprima el resultado. Estructura de Control Repetitiva desde (for) Ejemplo 2. Calcule la sumatoria de todos los números entre 1 y el 15, e imprima el resultado.

Use Quizgecko on...
Browser
Browser