Você está na página 1de 13

UNIVERSIDAD DE PANAMÁ

CENTRO REGIONAL UNIVERSITARIO DE VERAGUAS


FACULTAD DE INFORMÁTICA, ELECTRÓNICA Y COMUNICACIÓN
ESCUELA DE INFORMÁTICA PARA LA GESTIÓN EDUCATIVA Y EMPRESARIAL
LICENCIATURA EN INFORMÁTICA PARA LA GESTIÓN EDUCATIVA Y EMPRESARIAL

PROGRAMA SINTÉTICO DE ASIGNATURA

DATOS GENERALES
DENOMINACIÓN DE LA ASIGNATURA: PROGRAMACIÓN I (INF. XXX)
CÓDIGO DE ASIGNATURA: XXXXX SEMESTRE: I SEMESTRE – I AÑO CRÉDITOS: 4
HORAS TOTALES: 80 TEÓRICAS: 3 LABORATORIO: 2
PRERREQUISITOS: No tiene

PROFESORA RESPONSABLE DE LA ELABORACIÓN


Prof. Giannina Núñez Marín
Profesor Regular Agregado

FECHA DE ELABORACIÓN: Septiembre 2011


JUSTIFICACIÓN

El fundamento de la tecnología computacional son los algoritmos. En cualquier programa de estudio a


nivel de Licenciatura, en lo que a tecnología computacional se refiere, es relevante y fundamental el estudio de
técnicas de diseño de algoritmos, y el aprendizaje de los fundamentos de la programación de computadores. Esta
es la base de la programación de sistemas informáticos.

Prof. GNúnezM Programación I – Licenciatura en Informática para la Gestión Educativa y Empresarial 2 de 13


OBJETIVOS GENERALES

Conocer los conceptos relacionados con el procesamiento de datos y la programación de computadoras.

Construir algoritmos usando las variables simples como estructura de datos y las instrucciones fundamentales
(entrada, salida, asignación, transferencia condicional y repetición) de un lenguaje de programación
imperativo-estructurado.

Desarrollar destrezas de programación eficiente, con códigos legibles y documentados, utilizando las
instrucciones fundamentales de un lenguaje de programación imperativo-estructurado.

Prof. GNúnezM Programación I – Licenciatura en Informática para la Gestión Educativa y Empresarial 3 de 13


DESCRIPCIÓN

En esta asignatura se incursiona en los fundamentos y conceptos básicos relativos a la programación de


computadores. Esta es la primera asignatura de una de las áreas fundamentales de formación, la programación de
computadoras, por lo que el dominio de las técnicas y estrategias de diseño de algoritmos con las instrucciones
fundamentales es decisivo para el éxito en las siguientes asignaturas relativas a la programación.
La asignatura se divide en cinco módulos:
Módulo 1: Se definen la base conceptual de la programación de computadoras, a saber, lenguaje de
programación, programa, algoritmo, evolución de los lenguajes de programación.
Módulo 2: Se describe la metodología de diseño de algoritmos, se enfatiza en las fases de análisis y diseño de
un algoritmo hasta llegar a la fase de compilación, ejecución y mantenimiento. Se escriben y
evalúan expresiones aritméticas y lógicas. Se realizan análisis de entrada, proceso y salida de
algoritmos. Se realizan pruebas de escritorio de algoritmos.
Módulo 3: Como técnicas de diseño de algoritmo se emplean pseudocódigo y diagramas de flujo, estos diseños
se asocian con las instrucciones fundamentales de un lenguaje de programación (leer, escribir,
asignar, selección). Se diseñan algoritmos con las instrucciones de entrada, salida, asignación y
transferencia condicional.
Módulo 4: Se introduce un lenguaje de alto nivel estructurado, se examina la sintaxis de las instrucciones
fundamentales y se codifican programas.
Módulo 5: Se diseñan algoritmos con ciclos de repetición, y se codifican en el lenguaje utilizado. Se desarrollan
actividades de análisis, diseño, codificación y documentación de algoritmos utilizando todas las
instrucciones fundamentales.

El enfoque metodológico se basa en la resolución guiada de problemas, la exposición dialogada y el desarrollo de


proyectos. Es importante la participación activa del estudiante en la resolución de problemas, con la orientación a la par
del docente.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 4 de 13


COMPETENCIAS GENÉRICAS

Desarrolla estrategias de estudio independiente para resolver problemas de aplicación mediante algoritmos
computacionales.

Desarrolla habilidades de pensamiento lógico estructurado necesarios para el análisis, diseño y desarrollo de sistemas
computacionales.

Adquiere destrezas para analizar problemas de diferentes campos de aplicación, y diseña algoritmos computacionales
para su procesamiento.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 5 de 13


COMPETENCIAS ESPECÍFICAS

Identifica el rol de cada uno de los componentes de un sistema de cómputo en el procesamiento de datos.

Establece la relación entre los diferentes conceptos involucrados en la programación de computadoras.

Analiza la evolución de los lenguajes de programación, según los diferentes criterios de clasificación.

Emplea una aproximación disciplinada a la especificación, implementación, verificación y documentación de


programas.

Aplica el orden de prioridad de los operadores en la evaluación y escritura de expresiones aritméticas y lógicas.

Deduce la entrada, proceso y salida de un algoritmo, a partir del enunciado del problema a resolver.

Aplica la prueba de escritorio para identificar el objetivo de un algoritmo así como para interpretar sus resultados.

Demuestra destrezas de programación eficiente, con códigos legibles y documentados, utilizando variables, las
instrucciones fundamentales (entrada/salida/asignación/transferencia condicional, repetición simple y anidada) y un
lenguaje de programación imperativo- estructurado.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 6 de 13


CONTENIDOS PROPUESTOS

Módulo I: Fundamentos de Programación


1. Sistema de cómputo
1.1 Concepto de computador (Arquitectura de Von Newman)
1.2 Hardware (Procesador, Memoria, Unidad de entrada, Unidad de salida)
1.3 Software
1.4 Datos
1.5 Usuarios
2. Fundamentos de programación
2.1 Algoritmo
2.2 Programa
2.3 Programa Fuente
2.4 Programa Objeto
2.5 Lenguaje de Programación
2.6 Compilador
2.7 Intérprete
3. Evolución de los lenguajes de programación
3.1 Nivel de abstracción
3.2 Generación
3.3 Paradigma
3.4 Forma de ejecución

Módulo II: Metodología de Diseño de Algoritmos


1. Confección de un programa
1.1 Fase de resolución de problema (Análisis del problema, Diseño de lógica)
1.2 Fase de implementación del programa (Codificación, Compilación /Interpretación, Ejecución, Depuración)
1.3 Documentación
2. Expresiones aritméticas y lógicas
Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 7 de 13
2.1 Operadores aritméticos
2.2 Expresiones aritméticas
2.3 Variable lógica
2.4 Operadores relacionales y operadores lógicos
2.5 Expresión lógica con operadores lógicos y relacionales
3. Análisis de problemas
3.1 Salida
3.2 Proceso
3.3 Entrada
4. Prueba de escritorio
4.1 Matriz de variables y pasos
4.2 Diseño de los datos de prueba

Módulo III: Diseño de Algoritmos I


1. Técnicas de diseño de algoritmos
1.1 Diagrama de flujo
1.2 Pseudocódigo
2. Concepto de variable
2.1 Como estructura de datos
2.2 Como dirección de memoria
3. Instrucciones fundamentales
3.1 Salida
3.2 Entrada
3.3 Asignación
3.4 Transferencia condicional simples y anidadas
3.5 Selector CASE
4. Algoritmos
4.1 Fórmulas aritméticas
4.2 Porcentaje
Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 8 de 13
4.3 Transferencia condicional con rangos de valores: a≤x≤b, x≤a o x≥b, x≥a
4.4 Transferencia condicional con varias variables.
4.5 Transferencia condicional simple y anidada.

Módulo IV: Codificación


1. Conceptos básicos del lenguaje de programación
1.1 Estructura de un programa
1.2 Identificadores y palabras reservadas
1.3 Tipos de datos
1.4 Constantes, variables
1.5 Declaraciones
1.6 Instrucciones fundamentales
2. Codificación
2.1 Manejo del entorno de desarrollo.
2.2 Asociación entre técnica de diseño de algoritmos e instrucciones del lenguaje.
2.3 Implementación de un programa.

Módulo V: Diseño de Algoritmos II


1. Instrucciones fundamentales-Repetición
1.1 Acumuladores y contadores
1.2 Repetición simple y anidada
1.3 Ciclos para…hacer
1.4 Ciclos repetir….hasta
1.5 Ciclos mientras…hacer
2. Algoritmos
2.1 Sumatoria
2.2 Promedio
2.3 Mayor/menor de un conjunto
2.4 Ciclos de 1….n; n es una constante o una variable
Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 9 de 13
2.5 Ciclos de 1… n; con incremento de k
2.6 Ciclos controlados por respuesta del usuario
2.7 Ciclos controlados por expresiones booleanas
2.8 Ciclos anidados.
3. Implementación
3.1 Uso eficiente de variables
3.2 Uso eficiente de bloques de código.
3.3 Documentación interna y externa del algoritmo.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 10 de 13


METODOLOGÍA Y RECURSOS

De manera general, la metodología se basa en la participación activa del estudiante, mediante lectura
comprensiva, prácticas individuales y grupales dentro y fuera del aula, laboratorios y proyectos de programación
grupales.
Los estudiantes realizan investigación del léxico relativo a la programación de computadoras, preparan informe de
síntesis mediante mapas conceptuales, cuadro sinóptico, hipertextos.

Mediante prácticas en el aula se ejercitan en la evaluación y escritura de expresiones aritméticas, relacionales y


lógicas, considerando la prioridad de los operadores y el uso de variables.
Mediante exposición dialogada se presenta la metodología y técnicas de diseño de algoritmos, así como las
instrucciones fundamentales. En atención a los conocimientos previos, se establece la relación de entrada, proceso,
salida de un algoritmo con la identificación de datos, operación, respuesta en la solución de problemas aritméticos
sencillos. Para ello se plantean problemas de aplicación con datos constantes, luego los mismos problemas se reescriben
con datos variables, y finalmente se identifican la salida, proceso y entrada del algoritmo. El diseño de algoritmos se
desarrolla en dos etapas: en la primera se resuelven problemas con instrucciones de entrada, asignación, salida,
transferencia condicional; se realizan tareas de codificación; y finalmente se resuelven problemas con instrucciones de
repetición con su respectiva codificación. Aplicar la prueba de escritorio para validar los algoritmos diseñados.
Realizar en el laboratorio demostraciones de codificación, compilación y depuración de programas.

Los principales recursos son apuntes de clases, guías de problemas resueltos y por resolver, sitios web con
información complementaria.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 11 de 13


CRITERIOS DE EVALUACIÓN

La evaluación se basa en la demostración de las capacidades demostradas de análisis, diseño e implementación de


algoritmos. Se llevan a cabo actividades de evaluación diagnóstica con el objetivo de determinar el dominio de
prerrequisitos: operaciones aritméticas en los diferentes conjuntos numéricos y la aplicación de estrategias en la
resolución de problemas de aplicación.

Durante el desarrollo de la asignatura es muy importante la evaluación formativa con miras a determinar el avance
en el dominio de la lógica de programación.

La evaluación sumativa se lleva a cabo mediante la aplicación de pruebas parciales individuales, laboratorios y
proyectos de programación grupales, y una prueba semestral individual.
La estrategia de evaluación sumativa sugerida es la siguiente:

ACTIVIDAD PORCENTAJE
Pruebas Parciales (3) 35%
Otras asignaciones: Laboratorios (4)/ 30%
Proyectos (1 ó 2) / Tareas
Examen Semestral (individual-escrito) 35%

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 12 de 13


BIBLIOGRAFÍA
1. ALCALDE, Eduardo y GARCÍA, Miguel Metodología de la Programación. México: Editorial McGraw-Hill, 1992.
2. APPLEBY, Doris y VANDEKOPPLE, Julios Lenguajes de Programación: Paradigma y Práctica. México: Editorial McGraw-
J. Hill, 1998.
3. BERZAL, Fernando Home Page: Curso de Programación en Java. [Fecha de consulta: 01 febrero 09].
Disponible en: http://elvex.ugr.es/
4. CORDERO, J.M. [et al] Introducción a la programación: Un enfoque práctico. Algaida, 1996.
5. GOTTFRIED, Byron Programación en C. Editorial Mc Graw Hill, México 1995.
6. JOYANES, Luis Fundamentos de programación. México: Editorial McGraw Hill.
7. JOYANES, Luis Programación en Turbo Pascal Versiones 5.5, 6.0 y 7.0. Segunda edición. México:
Editorial McGraw Hill, 1993.
8. JOYANES, Luis. Problemas de Metodología de la Programación. Editorial McGraw Hill. México,
1990.
9. LÉVÉNEZ, Eric Eric Lévénez’s Site: Computer Languages History. (on-line). [actualizado: 22 dic
2007]. [Fecha de consulta: 19 abr 2008]. Disponible en:
http://www.levenez.com/lang/
10. MARZAL, Andrés y GARCÍA, Isabel Introducción a la Programación con Python. Disponible en:
http://marmota.act.uji.es/MTP/pdf/python.pdf Consultado [ago-08]
11. NORTON, Peter Introducción a la computación. Tercera Edición. México: Editorial McGraw-Hill,
1999.
12. NÚÑEZ, Giannina “Introducción a la Programación”. Apuntes de clases. Universidad de Panamá,
Centro Regional Universitario de Veraguas, Santiago de Veraguas, 2009.
13. PYTHON Org Python Programming Language: Official WebSite [en línea]. [Fecha de consulta:
12 agosto 08]. Disponible en: http://www.python.org/
14. UNIVERSIDAD Técnica Particular de Loja. Metodología de la Programación I [en línea]. Ecuador: Escuela de Ciencias de la
Computación. [Actualizado: 03 abril 2009][Consultado: 01 octubre de 2009]
Disponible en:
http://www.utpl.edu.ec/ecc/wiki/index.php/Metodolog%C3%ADa_de_la_Programa
ci%C3%B3n_I
15. WILSON, Leslie y CLARK, Robert Comparative Programming Languages. Tercera Edición. England: Addison-
Wesley, 2001.

Prof. GNúnezM Programación I Licenciatura en Informática para la Gestión Educativa y Empresarial 13 de 13