





































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Esta monografía presenta los conceptos básicos de programación, incluyendo los fundamentos de la programación, herramientas de programación y metodología de programación. También aborda los diferentes tipos de lenguajes de programación y su clasificación, así como los traductores como compiladores e intérpretes. Además, se explica la importancia de la programación estructurada y la programación modular.
Tipo: Monografías, Ensayos
1 / 45
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!






































i UNIVERSIDAD NACIONAL DE EDUCACIÓN Enrique Guzmán y Valle Alma Máter del Magisterio Nacional FACULTAD DE CIENCIAS Escuela Profesional de Matemática e Informática
Examen de Suficiencia Profesional Res. N°0505-2019-D-FAC Presentada por:
Para optar al Título Profesional de Licenciado en Educación Especialidad: Informática
Lima, Perú 2019
ii MONOGRAFÍA
Designación de Jurado Resolución N°0505-2019-D-FAC
Dr. Caballero Cifuentes, Lolo José Presidente
Dr. Morales Romero, Guillermo Pastor Secretario
Dra. Vargas Tumaya, Jady Luz Vocal
Línea de investigación: Tecnología y soportes educativos.
iv Índice de contenidos
Portada………………………………………………………………………………………i Hoja de firmas de jurado……………………………………………………………………ii Dedicatoria…………………………………………………………………………………iii Índice de contenidos……………………………………………………………………….iv Lista de tablas..………………………………………………………………………...…...vi Lista de figuras.……………………………………………………………………………vii Introducción………………………………………………………………………………viii Capítulo I. Fundamentos de la programación……………………………………………… 9 1.1 Conceptos principales……………………………………………………………….…. 9 1.1.1 Programación……………………………………………………………………. 9 1.1.2 Algoritmo.…………………………………………………...………...……….. 10 1.1.3 Programa………………………………………………………………...……... 1.1.4 Lenguaje de programación.………………………………….………….…..….. 10 1.2 Lenguajes de programación...………………………………………………………… 10 1.2.1 Tipos de lenguaje.……………………………………….…………………..…… 1.2.1.1 Lenguajes de máquina y ensamblaje....................................................................
1.2.1.1.2 Bajo nivel........................................................................................................... 1.2.1.1.3 Alto nivel........................................................................................................... 1.3 Traductores...................................................................................................................... 1.3.1 Compiladores......................................................................................................... 1.3.2 Intérpretes..............................................................................................................
1.4 Fases de la programación................................................................................................
1.2.1.1.1 Máquina ............................................................................................................
vii Lista de figuras
Figura 1. Proceso traductor de programas..……………………………………………….. 12 Figura 2. Compilación (fases de la compilación).………………………………………… 13 Figura 3. Intérpretes………………………………………………………………………. 14 Figura 4. Diagrama de flujo……………………………………………………….……… 17 Figura 5. Pseudocódigo ejemplo de estructura selectiva simple.…………………………. 24 Figura 6. Símbolos del diagrama de flujo………………………………………………… 25
viii Introducción
La monografía titulada Introducción a la programación desarrolla el marco teórico para comprender sobre programación como un proceso mediante el cual se codifican una serie de instrucciones, en un determinado lenguaje, para ser posteriormente decodificados y ejecutados por un sistema computacional, todo ello con el fin de resolver un problema y que debe ser entendida por todo estudiante de educación superior. Esta monografía servirá de referencia y guía de estudio, porque presenta los fundamentos, herramientas y metodologías más sobresalientes de la programación. El trabajo tiene una organización en 3 capítulos: el capítulo I, expone sobre los fundamentos de la programación; el capítulo II, explica sobre las herramientas de programación; el capítulo III, trata sobre metodología de programación. Finalmente, se presenta la aplicación didáctica mostrando la sesión de aprendizaje, guía de laboratorio y un instrumento que permita valorar el aprendizaje, la síntesis, apreciación crítica y sugerencias, y referencias.
1.1.2 Algoritmo. Conjunto de pasos finitos y secuenciales que permiten resolver un problema. El nombre de algoritmos deriva del matemático Persa Alkhowarizmi en el siglo XVIX.
1.1.3 Programa. Es una secuencia de instrucciones que una computadora puede interpretar y ejecutar.
1.1.4 Lenguaje de programación. Los lenguajes de programación son una serie de comandos que escritos secuencialmente y respetando la sintaxis resuelven una situación problemática en cuanto a información.
1.2 Lenguajes de programación Lenguaje de programación, se expresan mediante un conjunto de instrucciones detalladas para una computadora digital. Dichas instrucciones se pueden ejecutar directamente cuando están en la forma numérica específica del fabricante de la computadora conocida como lenguaje de máquina, después de un simple proceso de sustitución cuando se expresa en un lenguaje ensamblador correspondiente, o después de la traducción de algún lenguaje de "nivel superior". Aunque hay muchos lenguajes de computadora, relativamente pocos son ampliamente utilizados. Los lenguajes de máquina y ensamblaje son de "bajo nivel", lo que requiere que un programador administre explícitamente todas las características idiosincráticas de almacenamiento y operación de datos de una computadora. Por el contrario, los lenguajes de alto nivel protegen al programador de preocuparse por tales consideraciones y proporcionan una notación que los programadores escriben y leen más fácilmente.
1.2.1 Tipos de lenguaje. 1.2.1.1 Lenguajes de máquina y ensamblaje. Un lenguaje de máquina consiste en los códigos numéricos para las operaciones que una computadora en particular puede ejecutar directamente. Los códigos son cadenas de 0s y 1s, o dígitos binarios (bits), que con frecuencia se convierten de y a hexadecimales (base
1.2.1.1.1 Máquina. El lenguaje ensamblador está un nivel por encima del lenguaje máquina. Utiliza códigos mnemotécnicos cortos para las instrucciones y permite al programador introducir nombres para bloques de memoria que contienen datos. Por lo tanto, se podría escribir "agregar pago, total" en lugar de "0110101100101000" para una instrucción que agrega dos números.
1.2.1.1.2 Bajo nivel. Generalmente los utilizan los mismos fabricantes y su comprensión es muy complicada, son llamados también lenguajes ensambladores traduciendo estos a órdenes que son ejecutados por la maquina (lenguaje de máquina). Son realizados bajos esquemas nemónicos.
Lenguajes compiladores típicos son: Visual Basic, JAVA, COBOL, etc. Para Carrasco (2013): El programa objeto obtenido de la compilación no ha sido traducido normalmente a código máquina sino a ensamblador. Para conseguir el programa máquina real se debe utilizar un programa llamado montador o enlazador (linker). El proceso de montaje conduce a un programa en lenguaje máquina directamente ejecutable (p.55).
Figura 2. Compilación (fases de la compilación). Fuente: Autoría propia.
1.3.2 Intérpretes. Carrasco (2013) mencionó que: Un intérprete es un traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta (dicho programa por medio de la computadora desarrolla una tarea especifica). A diferencia de los compiladores revisa y ejecuta instrucción por instrucción, de tal modo que puede presentar anomalías antes de finalizar la tarea (p.62).
Cuando un lenguaje de programación de alto nivel ha pasado por la tapa de traducción mediante un interpretador se le denomina lenguaje interpretado, sien el BASIC el lenguaje representante de este modelo. La codificación de estos lenguajes, generalmente se realiza por sus propios editores. Tienen como principal característica que son traducidos y verificados línea a línea lo que permite corregir los errores inmediatamente hasta corregirlos totalmente, generando igualmente una versión compilada.
Figura 3. Intérpretes. Fuente: Autoría propia.
Tabla 1 Clasificación de lenguaje de programación.
Nota : Principales lenguajes de programación. Fuente: Joyanes, 2006.
PROGRAMA FUENTE
INTERPRETE
EJECUCION LÍNEA A^ TRADUCCIÓN Y LÍNEA
realista. Finalmente, si el proyecto está listo entonces uno debe tomar medidas para garantizar que el proyecto esté debidamente documentado y analizado. Cuatro pasos: Tener en claro el procesamiento deseado Verificar la factibilidad e implementación del programa Documentar el análisis Realizarlo Plan: Estimar cuánto tiempo durará la tarea y decidir qué características se implementarán en qué orden, estableciendo hitos para la finalización de varias partes de las fechas específicas y poner fecha límite final. Esta etapa tiende a estar entrelazada con la etapa de Análisis y Diseño. Puede desarrollar una buena estimación de cuánto tiempo durará la tarea hasta que haya pensado un poco en cómo va a resolverla. Por otro lado, una de las cosas para las que necesita y no tiene tiempo es su propio análisis.
1.4.2 Análisis del problema. Es la comprensión afondo del problema y sus detalles y es un requisito para logar una solución eficaz.
1.4.3 Diseño y elaboración del algoritmo. Dos formas comunes de diseñar la solución a un problema son dibujar un diagrama de flujo y escribir un seudocódigo, o posiblemente ambos. Esencialmente, un diagrama de flujo es una representación gráfica de una solución paso a paso a un problema. Consiste en flechas que representan la dirección que toma el programa y cuadros y otros símbolos que representan acciones. Es un mapa de lo que su programa va a hacer y cómo lo va a hacer.
El American National Standards Institute (ANSI) ha desarrollado un conjunto estándar de símbolos de diagrama de flujo. La Figura muestra los símbolos y cómo se pueden usar en un diagrama de flujo simple de un acto cotidiano común: preparar una carta para enviarla por correo. El seudocódigo es un lenguaje no estándar similar al inglés que le permite establecer su solución con más precisión de la que puede en inglés simple, pero con menos precisión que la que se requiere cuando se utiliza un lenguaje de programación formal. El pseudocódigo le permite concentrarse en la lógica del programa sin tener que preocuparse por la sintaxis precisa de un lenguaje de programación en particular. Sin embargo, el pseudocódigo no es ejecutable en la computadora.
Figura 4. Diagrama de flujo. Fuente: Recuperado de https://www.google.com/url?sa=www.aiteco .com%Fdiagrama-de-flujo
todavía están con nosotros, por lo que la mayoría de los programadores se acostumbran a la idea de que sus programas recién escritos probablemente tengan algunos errores. Esto es un poco desalentador al principio, ya que los programadores tienden a ser personas precisas, cuidadosas y orientadas a los detalles que se enorgullecen de su trabajo. Aun así, hay muchas oportunidades para introducir errores en los programas, y usted, como aquellos que lo han precedido, probablemente encontrará varios de ellos. Finalmente, después de codificar el programa, debe prepararse para probarlo en la computadora. Este paso implica estas fases: Escritorio de cheques. Esta fase, similar a la corrección de pruebas, a veces es evitada por el programador que está buscando un acceso directo y está ansioso por ejecutar el programa en la computadora una vez que está escrito. Sin embargo, con una cuidadosa verificación de escritorio, puede descubrir varios errores y posiblemente ahorrar tiempo a largo plazo. En la verificación de escritorio, simplemente se sienta y rastrea mentalmente, o verifica, la lógica del programa para tratar de asegurarse de que esté libre de errores y sea viable. Muchas organizaciones llevan esta fase un paso más allá con un tutorial, un proceso en el que un grupo de programadores, sus pares, revisan su programa y ofrecen sugerencias de manera colegiada. Traduciendo. Un traductor es un programa que verifica la sintaxis de su programa para asegurarse de que el lenguaje de programación se utilizó correctamente, proporcionándole todos los mensajes de error de sintaxis, llamados diagnósticos, y luego traduce su programa a una forma de computadora puede entender, un subproducto del proceso es que el traductor le dice si ha utilizado incorrectamente el lenguaje de programación de alguna manera. Este tipo de errores se denominan errores de sintaxis. El traductor produce mensajes de error descriptivos. Por ejemplo, si en FORTRAN escribe erróneamente N = 2 * (I + J)), que tiene dos paréntesis de cierre en lugar de uno, recibirá
un mensaje que dice: "Padres Inigualables" (los diferentes traductores pueden proporcionar una redacción diferente para los mensajes de error). Los programas son traducidos más comúnmente por un compilador. La traducción involucra su programa original, llamado módulo fuente, que un compilador transforma en un módulo objeto. Los programas pre escritos de una biblioteca del sistema pueden agregarse durante la fase de enlace / carga, lo que da como resultado un módulo de carga. El módulo de carga puede ser ejecutado por la computadora. Depuración. Un término usado ampliamente en programación, depuración significa detectar, localizar y corregir errores (errores), generalmente ejecutando el programa. Estos errores son errores lógicos, como decirle a una computadora que repita una operación, pero no decirle cómo dejar de repetir. En esta fase, ejecuta el programa utilizando los datos de prueba que diseña. Debe planificar los datos de la prueba cuidadosamente para asegurarse de probar cada parte del programa.
1.4.6 Documentación. Documentar es un proceso continuo y necesario, sin embargo, como muchos programadores lo están, puede estar ansioso por realizar actividades más emocionantes centradas en la computadora. La documentación es una descripción detallada por escrito del ciclo de programación y hechos específicos sobre el programa. Los materiales típicos de documentación del programa incluyen el origen y la naturaleza del problema, una breve descripción narrativa del programa, herramientas lógicas como diagramas de flujo y pseudocódigos, descripciones de registros de datos, listas de programas y resultados de pruebas. Los comentarios en el programa en sí también se consideran una parte esencial de la documentación. Muchos programadores documentan mientras codifican. En un sentido