Introducción A La Programación
Introducción A La Programación
Introducción A La Programación
MONOGRAFÍA
INTRODUCCIÓN A LA PROGRAMACIÓN
Introducción, fundamentos de la Programación, herramientas de
programación, metodología de Programación, aplicaciones.
Presentada por:
Lima, Perú
2019
ii
MONOGRAFÍA
INTRODUCCIÓN A LA PROGRAMACIÓN
Introducción, fundamentos de la Programación, herramientas de
programación, metodología de Programación, aplicaciones.
________________________________________
Dr. Caballero Cifuentes, Lolo José
Presidente
__________________________________________
Dr. Morales Romero, Guillermo Pastor
Secretario
____________________________
Dra. Vargas Tumaya, Jady Luz
Vocal
profesional.
iv
Índice de contenidos
Portada………………………………………………………………………………………i
Dedicatoria…………………………………………………………………………………iii
Índice de contenidos……………………………………………………………………….iv
Lista de tablas..………………………………………………………………………...…...vi
Lista de figuras.……………………………………………………………………………vii
Introducción………………………………………………………………………………viii
1.1.1 Programación…………………………………………………………………….9
1.1.2 Algoritmo.…………………………………………………...………...………..10
1.1.3 Programa………………………………………………………………...……...10
1.3 Traductores......................................................................................................................12
1.3.1 Compiladores.........................................................................................................12
1.3.2 Intérpretes..............................................................................................................13
1.4.4 Codificación………………………….…….………………………………….…18
1.4.6 Documentación……………………….….…………………………………….....20
1.4.8 Mantenimiento.………………………………….….…………………………….21
2.1 Algoritmo……………………………………………………………………………...22
2.2 Pseudocódigo………………………………………………………………………….24
Aplicación didáctica………………………………………………………………….……37
Síntesis....…………………………………………………………………………….…….43
Referencias………………………………………………………………………………...45
vi
Lista de tablas
Lista de figuras
Figura 3. Intérpretes……………………………………………………………………….14
Introducción
comprender sobre programación como un proceso mediante el cual se codifican una serie
ejecutados por un sistema computacional, todo ello con el fin de resolver un problema y
sugerencias, y referencias.
9
Capítulo I
Fundamentos de la programación
La computadora permite procesar datos para generar información, este proceso es en forma
Pero del mismo modo se puede diseñar procesos a medida, de ciertas situaciones que
nos apremian, los cuales pueden involucrar diversas operaciones sean aritméticas o
1.1.1 Programación.
computacional, todo ello con el fin de resolver un problema. Es decir, implementar desde
1.1.2 Algoritmo.
1.1.3 Programa.
información.
Los lenguajes de máquina y ensamblaje son de "bajo nivel", lo que requiere que un
proporcionan una notación que los programadores escriben y leen más fácilmente.
11
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
máquina generalmente usan algunos bits para representar operaciones, como la suma, y
a otra.
1.2.1.1.1 Máquina.
El lenguaje ensamblador está un nivel por encima del lenguaje máquina. Utiliza
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.
que son ejecutados por la maquina (lenguaje de máquina). Son realizados bajos esquemas
nemónicos.
12
Add A, B Instrucción 2
1.3 Traductores
Son programas que traducen los programas fuente escritos en lenguajes de alto nivel a
1.3.1 Compiladores.
Para Carrasco (2013) “un compilador es un programa que traduce los programas
fuente escritos en lenguajes de alto nivel a lenguaje máquina” (p.26). Son llamados
lenguaje fuentes a aquellos codificados en lenguajes de alto nivel y los ya traducidos se les
hay problemas envía mensajes indicando las fallas, este proceso es repetitivo hasta que no
Lenguajes compiladores típicos son: Visual Basic, JAVA, COBOL, etc. Para
Carrasco (2013):
PROGRAMA FUENTE
COMPILADOR
(TRADUCTOR)
PROGRAMA OBJETO
MONTADOR
PROGRAMA
EJECUTABLE EN
LENGUAJE MÁQUINA
1.3.2 Intérpretes.
instrucción, de tal modo que puede presentar anomalías antes de finalizar la tarea
(p.62).
14
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
PROGRAMA FUENTE
INTERPRETE
TRADUCCIÓN Y
EJECUCION LÍNEA A
LÍNEA
Tabla 1
Clasificación de lenguaje de programación.
Antes de pasar a discutir los cinco pasos para crear un programa, es importante determinar
datos que debe seguir una computadora. Los diferentes programas se escriben con
modelo para lograr realizar el algoritmo y resolver el problema. Esta metodología llamada
Ciclo de desarrollo del Software, consta de una serie de pasos lógicos secuenciales
3. Diseño de la solución
4. Codificación
6. Documentación
7. Implementación (producción)
8. Mantenimiento
edición). Saber quién será el usuario final, también es importante. La determinación de las
para que esto suceda. Después de que esto se haya decidido, la factibilidad será la siguiente
realista. Finalmente, si el proyecto está listo entonces uno debe tomar medidas para
Cuatro pasos:
Documentar el análisis
Realizarlo
Plan:
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
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
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.
su solución con más precisión de la que puede en inglés simple, pero con menos precisión
pseudocódigo le permite concentrarse en la lógica del programa sin tener que preocuparse
.com%Fdiagrama-de-flujo
18
1.4.4 Codificación.
idioma inglés, son mucho más precisos. Para que su programa funcione, debe seguir
exactamente las reglas, la sintaxis, del idioma que está utilizando. Por supuesto, usar el
idioma correctamente no garantiza que su programa funcionará, más que hablar inglés
correcto gramaticalmente significa que sabe de lo que está hablando. El punto es que el
uso adecuado del lenguaje es el primer paso requerido. Luego, su programa codificado
Una nota más aquí: los programadores generalmente usan un editor de texto, que es
algo así como un programa de procesamiento de texto, para crear un archivo que contiene
el programa. Sin embargo, como principiante, es probable que primero desee escribir su
demostrar que un programa es correcto. Sin embargo, las imperfecciones del mundo
19
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
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
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
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
erróneamente N = 2 * (I + J)), que tiene dos paréntesis de cierre en lugar de uno, recibirá
20
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
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.
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
1.4.6 Documentación.
programadores lo están, puede estar ansioso por realizar actividades más emocionantes
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
sistema completo.
documentación escrita para que aquellos que vienen después de usted puedan realizar las
utilizarse con un alto grado de confianza para resolver los problemas que dieron
1.4.8 Mantenimiento.
Es la fase de mayor duración, siempre y cuando el programa funcione bien, este debe
Capítulo II
Herramientas de programación
2.1 Algoritmo
problema que queremos resolver, debemos de conocer las etapas que son comunes.
Un algoritmo es una técnica para resolver un problema mediante una serie de pasos
-Definido: si se repite más de una vez los resultados deben ser iguales.
pueda ser resuelto con la ayuda de un computador. Entonces diremos que un algoritmo es
UNE”, entonces este joven universitario se despierta a las 5 am y seguirá los siguientes
pasos:
Apagar el despertador.
23
Levantarse de la cama.
Asearse.
Vestirse.
Hacer su cola.
Subir al ómnibus.
Ingresar a la Universidad.
Buscar el comedor.
Ingresar al comedor.
Desayunar.
Buscar el aula.
Ingresar al aula.
Nos damos cuenta que el joven siguió pasos precisos, definidos y finitos, si
fin, pero si agregamos más pasos que no alteren el orden, sería otro algoritmo válido
también ya que llegaríamos al mismo fin, de ingresar al aula. Las herramientas que
Para llegar al resultado que queremos alcanzar debemos seguir la secuencia de pasos
2.2 Pseudocódigo
PSEUDOCÓDIGO
Si (condición) entonces
Sentencias
FinSi
Esto quiere decir, que el uso de un algoritmo sigue un lineamiento y tiene vigencia a
Capítulo III
Metodología de programación
El diseño de arriba hacia abajo comienza con una descripción del sistema general y
detalladas del sistema en cada nivel inferior. Los detalles de diseño de nivel inferior
continúan hasta que ya no sea posible una subdivisión adicional, es decir, hasta que el
sistema.
desarrollan funciones separadas como unidades de código separadas para que otras
minimizan las dependencias entre los diferentes módulos. Los equipos pueden desarrollar
módulos por separado y no requieren el conocimiento de todos los módulos del sistema.
diseñados de tal manera que minimizan las dependencias entre los diferentes módulos. Los
módulo. Si se debe aplicar algún cambio a un módulo, solo se deben cambiar las
subrutinas afectadas. Esto hace que el programa sea más fácil de leer y comprender.
El módulo principal se compila como un ejecutable (EXE), que llama a las funciones del
módulo auxiliar. Los módulos auxiliares existen como archivos ejecutables separados, que
se cargan cuando se ejecuta el EXE principal. Cada módulo tiene un nombre único
deben ser únicos para facilitar el acceso si las funciones utilizadas por el módulo principal
deben exportarse.
28
Los idiomas que admiten el concepto de módulo son IBM Assembler, COBOL,
Los programas se pueden diseñar más fácilmente porque un equipo pequeño solo se
aplicación.
función.
lenguajes, como Pascal, Algorithmic Language (ALGOL) y Ada, están diseñados para
contraste con el uso de pruebas y saltos simples como la declaración go to, que puede
Discusión
controlar un programa para que se ejecuten diferentes líneas de código o que algunas
líneas de código se ejecuten muchas veces. Los mecanismos que nos permiten controlar el
para documentar (trazar) el flujo (o rutas) que un programa ejecutaría. Hay tres categorías
Selección: aquí es donde selecciona o elige entre dos o más flujos. La elección se
decide haciendo algún tipo de pregunta. La respuesta determina la ruta (o qué líneas de
código) se ejecutará.
30
Iteración: también conocida como repetición, permite ejecutar (o repetir) un código (de
una a muchas líneas) varias veces. Es posible que el código no se ejecute en absoluto
(repítalo cero veces), se ejecute un número fijo de veces o se ejecute indefinidamente hasta
que se cumpla alguna condición. También conocido como bucle porque el diagrama de
Ramificación: una estructura no controlada que permite que el flujo de ejecución salte
a una parte diferente del programa. Esta categoría rara vez se usa en la programación
estructurada modular.
Todos los lenguajes tienen las tres primeras categorías de estructuras de control (secuencia,
un artículo de Edsger Dijkstra. Propuso un método de "ir a menos" para planificar la lógica
estructuras de control. El tema fue debatido durante unos 20 años. Pero en última
instancia: “A fines del siglo XX, casi todos los informáticos estaban convencidos de que es
programaciones estructuradas.
no estructurada. Algunos ejemplos son: las primeras versiones de BASIC (como MSX
depuradores assembler y algunos lenguajes scripting como los archivos batch de MS-DOS.
programación orientada a objetos tiene como objetivo implementar entidades del mundo
principal de OOP es unir los datos y las funciones que operan en ellos para que ninguna
otra parte del código pueda acceder a estos datos, excepto esa función.
orientado a objetos:
programación OOP para diferenciar entre entidades con el mismo nombre de manera
Objetos). Es el mecanismo en Java por el cual una clase puede heredar las
terminología importante:
-Subclase: La clase que hereda la otra clase se conoce como subclase (o una clase
derivada, clase extendida o clase secundaria). La subclase puede agregar sus propios
crear una nueva clase y ya hay una clase que incluye parte del código que queremos,
podemos derivar nuestra nueva clase de la clase existente. Al hacer esto, estamos
unidad. Es el mecanismo que une el código y los datos que manipula. Otra forma de
pensar en la encapsulación es que es un escudo protector que evita que el código acceda a
cualquier otra clase y solo se puede acceder a ellos a través de cualquier función miembro
de la propia clase en la que se declaran. Al igual que en la encapsulación, los datos de una
clase están ocultos de otras clases, por lo que también se conoce como ocultación de datos.
privadas y escribiendo métodos públicos en la clase para establecer y obtener los valores
de las variables.
33
componentes individuales.
hombre solo sabe que al presionar los aceleradores aumentará la velocidad del automóvil o
al aplicar los frenos se detendrá el automóvil, pero no sabe cómo al presionar el acelerador
abstracción.
Clase. Una clase es un modelo o prototipo definido por el usuario a partir del cual se
crean los objetos. Representa el conjunto de propiedades o métodos que son comunes a
todos los objetos de un tipo. En general, las declaraciones de clase pueden incluir estos
componentes, en orden:
-Modificadores: una clase puede ser pública o tener acceso predeterminado (consulte esto
-Nombre de clase: el nombre debe comenzar con una letra inicial (en mayúscula por
convención).
34
precedido por la palabra clave se extiende. Una clase solo puede extender (subclase) un
padre.
-Interfaces (si las hay): una lista de interfaces separadas por comas implementadas por la
clase, si las hay, precedidas por los implementos de palabras clave. Una clase puede
entidades de la vida real. Un programa Java típico crea muchos objetos que, como
-Estado: está representado por los atributos de un objeto. También refleja las propiedades
de un objeto.
otros objetos.
específica sin devolver nada. Los métodos nos permiten reutilizar el código sin volver
a escribir el código. En Java, cada método debe ser parte de alguna clase que sea
Los métodos ahorran tiempo y nos ayudan a reutilizar el código sin tener que volver
a escribirlo.
-Modificador de acceso: define el tipo de acceso del método, es decir, desde dónde se
-protegido: accesible dentro del paquete en el que está definido y en sus subclases
-El tipo de retorno: el tipo de datos del valor devuelto por el método o nulo si no
devuelve un valor.
-Nombre del método: las reglas para los nombres de campo se aplican también a los
-Lista de parámetros: la lista separada por comas de los parámetros de entrada se define,
precedida por su tipo de datos, dentro del paréntesis adjunto. Si no hay parámetros, debe
-Lista de excepciones: las excepciones que espera por el método pueden arrojar, puede
-Cuerpo del método: está encerrado entre llaves. El código que debe ejecutarse para
procedimiento y, por lo tanto, invocará una función en el objeto receptor que genera
Aplicación didáctica
Sesión de aprendizaje
I. DATOS INFORMATIVOS:
MOMENTOS DE LA SESIÓN
Inicio: Tiempo aproximado: 10 minutos
Grupo de clase:
Saluda amablemente a los estudiantes e inicia la sesión comentando lo trabajado en la
sesión anterior.
Se pregunta: ¿Qué trabajamos en la clase anterior? ¿Qué era un algoritmo?
Se escuchan sus ideas.
Se comenta un caso: De realizar una suma usando algoritmos. Se pregunta: ¿Qué
deben hacer los estudiantes para sumar?
Se escuchan sus ideas.
Se acuerda con los estudiantes algunas normas de convivencia que los ayudarán a
trabajar mejor.
Normas de convivencia
Guardar silencio en la clase.
Escuchar y respetar a mis compañeros.
Trabajar en equipo sin molestar.
Trabajo individual
Se pide a los estudiantes que, en sus PC, abran el programa Pseint, se explica
brevemente la función del programa.
Se pide a los estudiantes que ejecuten un algoritmo para crear sumas.
Se entrega a los estudiantes una hoja de información con los pasos.
Se pasará por cada estudiante, disipando dudas y apoyándolos en todo momento.
Al finalizar se pide a un voluntario, explicar lo trabajado en clase.
Se evaluará el proceso mediante una lista de cotejo.
39
CIERRE 10 Minutos
Se verifica que todos han concluido su trabajo.
Se propicia la metacognición con las siguientes preguntas: ¿qué hemos hecho hoy?,
¿qué se consideró para la elaboración?, ¿qué es lo que más les gusta de su trabajo?
Se retoma el propósito y pregunta: ¿Qué es un algoritmo? ¿Cómo lo ejecutamos?
____________________________ _____________________________
Directora Profesora
40
Hoja de información
Ejercicio: Realizar con PSEINT para hallar la suma de dos números naturales.
Pasos:
1. Prender la PC.
2. Abrir PSEINT
3. Muestra la pantalla:
Nota: Si hay errores al ejecutar, se pondrá en color Rojo, corríjalos y vuelva a ejecutar.
Resultados de la ejecución.
8. Al finalizar de forma correcta saldrá la siguiente ventana. Revisión por parte del asesor.
43
Síntesis
información.
de procesamiento de la información.
sea manualmente o por métodos mecanizados que, son los más usuales en la actualidad.
intenta resolver. Esta metodología llamada Ciclo de Desarrollo del Software, consta de una
La computadora permite procesar datos para generar información, este proceso es en forma
soluciones a la medida, de ciertos problemas que se nos presentan., los cuales pueden
tareas.
45
Referencias
Aplicadas S.A.C.
Castañeda, O., J., Vargas, G., M. del C., León, C., J. (2013). Programación con Visual
Gestión Educativa.
García, B., Jaén, G., J., A., y Martínez, F. R. (2002). Métodos Informáticos en Turbo
Tremblay, J., P. (2011). Introducción a las ciencias de las computadoras. Estados Unidos:
McGraw-Hill