CONTENIDO
UNIDAD DIDACTICA I
Tema 1
Introduccién
1.1 Méquinas y programas
1.1.1 Méaquinas programables
1.1.2 Concepto de cémputo
1.1.3 Concepto de computador
1.2 Programacion e ingenieria de software
1.2.1 Programacién
1.2.2 Objetivos de la programacién
13 Lenguajes de programacién
14 Compiladores e Intérpretes
1.5 Modelos abstractos de cé6mputo.
1.5.1 Modelo funcional
1.5.2 Modelo de flujo de datos
1.5.3 Modelo de programacién légica
1.5.4 Modelo imperative
1.6 Elementos de la programacién imperativa
1.6.1 Procesador, entorno, acciones
1.6.2. Acciones primitivas. Acciones compuestas
1.6.3 Esquemas de acciones
17 Evolucién de la programacién
1.7.1 Evolucién comparativa Hardware /Software
1.7.2 Necesidad de una buena metodologia
Tema 2
Elementos Basicos de la
Programacién Imperativa
2.1 Notacién BNF
2.2 Valores y tipos
2.3. Representacién de valores constantes
23.1 Valores numéricos enteros
2.3.2 Valores Numéricos Reales
2.3.3 Caracteres
2.3.4 Ristras de caracteres (Strings)
2.4 Tipos predefinidos
2.4.1 El tipo INTEGER
WONNAATWYw
27
27
28
29
30
30
31
32
33
33vin Fundamentos de Programacién con Modula-2
2.4.2 El tipo CARDINAL
24.3 El tipo REAL a
244 Fi tipo CHAR
2.5. Expresiones aritméticas
2.6 Operaciones de escritura simples
2.6.1 Procedimientos Writelnt y WriteCard
2.6.2 Procedimiento WriteReal
2.6.3 Procedimientos Write y WriteString
2.6.4 Procedimiento WriteLn
27 Estructura de un programa completo
2.7.1 Uso de comentarios
2.7.2 Descripcién formal de la estructura de un programa
2.8 Ejemplos de programas
2.8.1 Escribir una fecha
2.8.2 Suma de ntimeros
2.8.3 Area y volumen de un cilindro
Tema 3
Constantes y Variables
3.1 Identificadores
3.2 El vocabulario de Modula-2
3.3. Constantes
3.3.1 Concepto de constante
3.3.2 Declaracién de constantes con nombre
| 3.4 Variables
34.1 Concepto de variable
3.4.2 Declaracién de variables
34.3. Uso de variables. Inicializacién
3.5 Sentencia de asignacién
3.5.1 Compatibilidad de tipos
3.6 Operaciones de lectura simple
3.6.1 Procedimientos ReadInt, ReadCard y ReadReal
3.6.2 Procedimiento Read
3.7 Estructura de un programa con constantes y variables
3.8 Ejemplos de programas
3.8.1 Ejemplo: Conversién a horas, minutos y segundos
3.8.2. Ejemplo: Area y volumen de un cilindro
3.8.3 Ejemplo: Realizacién de un recibo
Tema 4
Metodologia de
Desarrollo de Programas ()
4.1 La programacion como resolucién de problemas
SEEESHESRRE
51
51
33
54.
54
55
57
37
58
60
61
65
67
68
69
6
71
aaContenido 1x
4.2. Descomposicién de un problema en subproblemas
4.3 Desarrollo de programas por refinamientos sucesivos
43.1 Desarrollo de un esquema secuencial
43.2 Ejemplo: imprimir la silueta de una silla
44 Aspectos de estilo
44.1 Encolumnado
442 Comentarios. Documentacién del refinamiento
4.4.3 Eleccién de nombres
444 Uso de letras maytisculas y mintsculas
4.4.5 Constantes con nombre
45 Ejemplos de programas
4.5.1 Ejemplo: Imprimir la figura de un arbol de navidad
45.2 Fjemplo: Calcular el costo de las baldosas
4.5.3 Ejemplo: Calcular los dias entre dos fechas
Tema 5
Estructuras Basicas de la
Programacién Imperativa
5.1 Programacién estructurada
5.1.1 Representacidn de la estructura de un programa
5.1.2 Secuencia
5.13 Seleccién
5.14 Hteracién
5.1.5 Estructuras anidadas
5.2 Expresiones condicionales
5.3 Estructuras basicas en Modula-2
5.3.1 Secuencia
5.3.2 Sentencia IF
5.3.3 Sentencia WHILE
5.3.4 Sentencia FOR
5.4 Ejemplos de programas
5.4.1 Ejemplo: Ordenar tres datos
5.4.2. Ejemplo: Escribir tm triéngulo de digitos
5.4.3 Ejemplo: Elaboracién de tickets y restimenes
Tema 6
Metodologia de
Desarrollo de Programas (I)
6.1 Desarrollo por refinamientos usando seleccién y bucles
6.1.1 Metodologia de desarrollo de un esquema de seleccién
6.1.2 Metodologia de desarrollo de un esquema de iteracién
6.2 Ejemplos de desarrollo de programas
6.2.1 Ejemplo: Imprimir el borde de un triéngulo
74
75
76
99
99
100
101
102
102
103
104
107
107
108
111
112
il4
14
16
118
121
121
123
125
126