Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Apuntes sobre la programación de computadoras, Apuntes de Tecnología de la Información

Apuntes de Metodología y Tecnología de la Programación sobre la programación de computadoras, Ciclo de vida de una aplicación informática, Diseño del programa, Instalación y explotación del programa, Errores .

Tipo: Apuntes

2013/2014

Subido el 20/01/2014

Jaime_89
Jaime_89 🇩🇴

4.5

(107)

467 documentos

1 / 31

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
METODOLOGÍA
contenido primera
evaluación
Capítulo 1.− La programación de computadoras.
1.1. Introducción
1.2. Ciclo de vida de una aplicación informática
1.2.1. Diseño del programa
1.2.2. Instalación y explotación del programa
1.3. Errores
1.3.1. Errores de compilación
1.3.2. Errores de ejecución
1.3.3. Errores de lógica
1.3.4. Errores de especificación
1.4. Calidad de los programas
1.5. Metodología de la programación
1.5.1. Programación modular
1.5.2. Programación estructurada
1.6. Documentación de los programas
1.6.1. Documentación interna
1.6.2. Documentación externa
1.7. Objetos de un programa
1.8. Identificadores
1.9 Tipos de datos
1.9.1. Tipo numérico entero
1.9.2. Tipo numérico real
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f

Vista previa parcial del texto

¡Descarga Apuntes sobre la programación de computadoras y más Apuntes en PDF de Tecnología de la Información solo en Docsity!

METODOLOGÍA

contenido primera evaluación Capítulo 1.− La programación de computadoras. 1.1. Introducción 1.2. Ciclo de vida de una aplicación informática 1.2.1. Diseño del programa 1.2.2. Instalación y explotación del programa 1.3. Errores 1.3.1. Errores de compilación 1.3.2. Errores de ejecución 1.3.3. Errores de lógica 1.3.4. Errores de especificación 1.4. Calidad de los programas 1.5. Metodología de la programación 1.5.1. Programación modular 1.5.2. Programación estructurada 1.6. Documentación de los programas 1.6.1. Documentación interna 1.6.2. Documentación externa 1.7. Objetos de un programa 1.8. Identificadores 1.9 Tipos de datos 1.9.1. Tipo numérico entero 1.9.2. Tipo numérico real

1.9.3. Tipo carácter 1.9.4. Tipo booleano 1.10. Constantes 1.11. Variables 1.12. Expresiones 1.12.1. Tipos de expresiones 1.12.2. Operadores 1.12.3. Tablas de verdad de los operadores lógicos 1.12.4. Orden de evaluación de los operadores Capítulo 3.− Estructura general de un programa. 3.1. Introducción 3.2. Partes principales de un programa 3.2.1. Entrada de datos 3.2.2. Proceso o algoritmo 3.2.3. Salida de resultados 3.3. Clasificación de las instrucciones 3.3.1. Instrucciones de declaración 3.3.2. Instrucciones primitivas 3.3.3. Instrucciones de control 3.3.4. Instrucciones compuestas 3.3.5. Comentarios 3.4. Variables auxiliares de un programa 3.4.1. Contadores 3.4.2. Acumuladores 3.4.3. Interruptores o conmutadores (switches) 3.5. Tipos de programas

5.5. Tratamiento secuencial de una tabla 5.5.1. Tratamiento secuencial de un vector 5.5.2. Tratamiento secuencial de una matriz 5.5.3. Tratamiento secuencial de un poliedro Capítulo 6.− Búsqueda y clasificación interna. 6.1. Introducción 6.2. Búsqueda lineal 6.2.1. Búsqueda lineal en un vector 6.2.2. Búsqueda lineal en un vector ordenado 6.2.3. Búsqueda lineal en una matriz 6.3. Búsqueda binaria o dicotómica 6.4. Ordenación de tablas 6.4.1. Ordenación por inserción directa 6.4.2. Ordenación por selección directa 6.4.3. Ordenación por intercambio directo. Método de la burbuja 6.4.4. Ordenación por intercambio directo con el test de comprobación (switch) 6.4.5. Ordenación por intercambio directo. Método de la sacudida 6.4.6. Ordenación por intercambio con incrementos decrecientes. Método Shell Capítulo 9.− Estructuras de datos externas (archivos). 9.1. Introducción 9.2. Conceptos y definiciones 9.3. Características de los archivos 9.4. Clasificación de los archivos según su uso 9.5. Organización de archivos 9.5.1. Organización secuencial 9.5.2. Organización aleatoria o directa

9.5.3. Organización secuencial indexada 9.6. Operaciones sobre archivos 9.7. Instrucciones para manejo de archivos 9.7.1. Creación de archivos secuenciales 9.7.2. Lectura de archivos secuenciales 9.7.3. Lectura−escritura de archivos directos 9.7.4. Lectura−escritura de archivos indexados Capítulo 10.− Métodos de tratamiento de archivos. 10.1. Introducción 10.2. Búsqueda en archivos secuenciales 10.2.1. Búsqueda en archivos desordenados 10.2.2. Búsqueda en archivos ordenados 10.3. Partición de archivos 10.3.1. Partición por contenido 10.3.2. Partición en secuencias 10.4. Mezcla de archivos 10.4.1. Mezcla con registro centinela 10.4.2. Mezcla controlada por valor de clave máximo 10.4.3. Mezcla controlada por fin de fichero 10.5. Clasificación de archivos 10.5.1. Clasificación por mezcla directa 10.5.2. Clasificación por mezcla equilibrada 10.5.3. Clasificación de raíz 10.6. Actualización de archivos 10.6.1. Actualización de archivos secuenciales 10.6.2. Actualización de archivos directos

1.2. CICLO DE VIDA DE UNA APLICACIÓN INFORMÁTICA

Una aplicación informática se compone de uno o varios programas interrelacionados. El proceso que se sigue desde el planteamiento de un problema hasta que tiene una solución instalada, se denomina ciclo de vida de una aplicación informática. FASES DE DISEÑO FASES DE INSTALACIÓN 1.2.1. DISEÑO DEL PROGRAMA 1.− Fase de análisis

  • Equipo a utilizar.
  • Personal informático.
  • Estudio de los datos de entrada (INPUT).
  • Estudio de los datos de salida o resultados (OUTPUT).
  • Relación entre la salida y la entrada.
  • Descomposición del problema en módulos. 2.− Fase de programación Consiste en el diseño de la solución al problema planteado en forma de algoritmo. 3.− Fase de codificación En esta fase se transcribe el algoritmo resultante de la fase anterior a un lenguaje de programación concreto. Al resultado se le denomina programa. 1.2.2. INSTALACIÓN Y EXPLOTACIÓN DEL PROGRAMA 1.− Fase de edición Escritura del programa fuente. Se hace con la ayuda de un programa del sistema denominado editor. 2.− Fase de compilación Traducción del programa fuente a lenguaje máquina. Para ello se dispone de programas compiladores o intérpretes. 3.− Fase de montaje En los programas compilados es necesario añadir al programa objeto algunas rutinas del sistema o en algunos casos subprogramas externos que se hayan compilado separadamente. De ello se encarga el programa montador (linker)

4.− Fase de prueba de ejecución Consiste en ejecutar el programa sucesivas veces don diferentes datos de prueba. 5.− Fase de explotación y mantenimiento La explotación consiste en el uso continuo y habitual por parte de los usuarios. Paralelamente a la explotación de una aplicación, consiste en la comprobación periódica de su buen funcionamiento. 1.3. ERRORES Corresponden al incumplimiento de las reglas sintácticas del lenguaje, como, por ejemplo, una palabra reservada del lenguaje mal escrita, una instrucción incompleta, etc. 1.3.2. ERRORES DE EJECUCIÓN Se deben generalmente a operaciones no permitidas, como dividir por cero, leer un dato no numérico en una variable numérica, exceder un rango de valores permitidos, etc. 1.3.3. ERRORES DE LÓGICA Corresponden a la obtención por el programa de resultados que no son correctos. 1.3.4. ERRORES DE ESPECIFICACIÓN Es posiblemente el pero tipo de error. Se deben a la realización de unas especificaciones incorrectas motivadas por una mala comunicación entre el programador y quien plantea el problema. 1.5. METODOLOGÍA DE LA PROGRAMACIÓN 1.5.1. PROGRAMACIÓN MODULAR Se basa en la realización de una serie de descomposiciones sucesivas del algoritmo inicial, que describen el refinamiento progresivo del repertorio de instrucciones que van a constituir el programa. 1.5.2. PROGRAMACIÓN ESTRUCTURADA Se basa en el uso exclusivo de las estructuras secuencia, alternativa e iteración para el control del flujo de ejecución de las instrucciones. 1.7. OBJETOS DE UN PROGRAMA Son aquellos manipulados por las instrucciones. Mediante ellos, en un programa podremos realizar el almacenamiento de los datos y de los resultados de las distintas operaciones. Tiene tres atributos:

  • Nombre: Es el identificador del mismo.
  • Tipo: Conjunto de valores que puede tomar.
  • Valor: Elemento del tipo que se asigna. 1.8. IDENTIFICADORES

1.9.4. TIPO BOOLEANO

Es el conjunto formado por los valores FALSO y CIERTO. Se expresan con su nombre. 1.10. CONSTANTES Son objetos cuyo valor permanece invariable a lo largo de la ejecución de un programa. PI=3.141592 PI 1.11. VARIABLES Son objetos cuyo valor puede ser modificado a lo largo de la ejecución de un programa. 1.12. EXPRESIONES Es la representación de un cálculo necesario para la obtención de un resultado. Se define una expresión de la siguiente forma:

  • Un valor es una expresión Ejemplo: 1.25, JUAN
  • Una constante o variable es una expresión. Ejemplo: PI, E, X.
  • Una función es una expresión. Ejemplo: COS(X), SQR(25) Una combinación de valores, constantes variables, funciones y operadores que cumplen determinadas reglas de construcción es una expresión.

Ejemplo: COS(PI * X) + 1. 2 * PI * X N = JUAN 1.12.1. TIPOS DE EXPRESIONES Numéricas.− Son las que producen resultados de tipo numérico se construyen mediante los operadores aritméticos.

Ejemplo: PI * SQR(X) Alfanuméricas. − Son las que producen resultados de tipo alfanumérico. Se construyen mediante los operadores alfanuméricos.

Ejemplo: Don + N

Booleanas. − Son las que producen resultados CIERTO o FALSO. Se construyen mediante los operadores relacionados y lógicos.

Ejemplo: A > 0 y B <= 5 1.12.2. OPERADORES

  • Aritméticos: ^ Potencia A^B
  • Producto A*B DIV o \ División A\B=2. MOD División entera A\B
  • Suma o signo positivo − Resta o signo negativo
  • Alfanuméricos:
  • Concatenación
  • Relacionales: = Igual a < Menor que

Mayor que <= Menor o igual que = Mayor o igual que <> Distinto a

  • Lógicos: no negación y conjunción o disyunción *** Paréntesis:** ( ) Se utilizan para anidar expresiones. 1.12.3. TABLAS DE VERDAD DE LOS OPERADORES LÓGICOS.

Evaluar las siguientes expresiones

  • 2 * x + 0.5 * y −1 / 5 * z 2 + 0.5 * y −1 / 5 * z 2 + 2 −1 /5 * z 2 +0−0.2 * z 2 + 2 − 4 − 2 2
  • PI * X ^ 2 > Y o 2 * PI * X <= Z PI * 1 > Y o 2 * PI * X <= Z 3.14159 > Y o 2 * PI * X <= Z 3.14159 > Y o 6.28318 * X <= Z 3.14159 > Y o 6.28318 <=Z FALSO O 6.28318 <= Z FALSO o CIERTO CIERTO
  • E ^ (X − 1) / (X * Z) / (X / Z) E ^ 0 / (X * Z) / (X / Z) E ^ 0 / 10 / (X / Z) E ^ 0 / 10 / 0. 1 / 10 / 0. 0.1 / 0. 1
  • DON + JUAN = DON JUAN o A = a DON JUAN = DON JUAN o A = a CIERTO o A = a

CIERTO O FALSO

CIERTO

2 Construir expresiones correctas para las siguientes: 1.− ax2 + bx + c " 0 A * X ^ 2 + B * X + C >= 0 2.− A es igual a B, pero no es igual a C A = B Y no (A = C) 3.− Con DN, MN, AN dia, mes y año de nacimiento de una persona y DA, MA, AA dias, mes y año actual. Espresar si tiene 18 años cumplidos. AA − AN > 18 o AA − AN = 18 y MA > MN o AA − AN = 18 y MA = MN y DA >= DN TEMA 3.− ESTRUCTURA GENERAL DE UN PROGRAMA 3.1. INTRODUCCIÓN Bloque de declaraciones. En él se especifican todos los objetos que utiliza el programa (constantes, variables, tablas, registros, archivos, etc.) indicando sus características. Este bloque se encuentra localizado siempre por delante del comienzo de las acciones.

Bloque de instrucciones. Constituido por el conjunto de operaciones que se han de realizar para la obtención de los resultados deseados.

3.2. PARTES PRINCIPALES DE UN PROGRAMA.

Están relacionadas con sus dos bloques ya mencionados. Dentro del bloque de instrucciones podemos diferenciar tres partes fundamentales. DECLARACIONES PROGRAMA Entrada de datos INSTRUCCIONES Proceso o algoritmo Salida de resultados 3.2.1. ENTRADA DE DATOS La constituyen todas las instrucciones que toman los datos de entrada desde un dispositivo externo y los almacenan en la memoria central para que puedan ser procesados. Datos de Memoria Entrada Central

objeto o realizar movimientos de datos de un valor final en un objeto o realizar movimientos de datos de un objeto a otro. Esta instrucción se realiza en dos tiempos: 1.− Se evalúa la expresión convirtiéndose en su valor final. 2.− El valor final se asigna al objeto borrándose cualquier otro valor previo que éste pudiera tener. A A + 1

  • Instrucción de salida. Su misión consiste en enviar datos a un dispositivo externo, bien tomándolos de objetos depositados en la memoria central o definidos de alguna forma en la propia instrucción. Ejemplo: Escritura en un dispositivo estándar (pantalla) de una fecha situada en la memoria en las variables DÍA, MES y AÑO. Escribir DIA, MES, AÑO 3.3.3. INSTRUCCIONES DE CONTROL Son instrucciones que no realizan trabajo efectivo alguno salvo la evaluación de expresiones, generalmente lógicas, con el objetivo de controlar la ejecución de otras instrucciones o alterar el orden de ejecución normal de las instrucciones de un programa.
  • Instrucciones alternativas Son aquellas que controlan la ejecución de uno o varios bloques de instrucciones. Existen tres modelos típicos de instrucciones alternativas:
  • Alternativa simple Controla la ejecución de un conjunto de instrucciones por el cumplimiento o no de una condición, si se cumple, se ejecutan, si no se cumple no se ejecutan Ejemplo: Instrucción alternativa simple que escribe la palabra positivo si el contenido de la variable A es mayor que 0. A> SI A>0 ESCRIBIR positivo SI A<0 FIN
  • Alternativa doble Controla la ejecución de dos conjuntos de instrucciones, si se cumple, se ejecutan las instrucciones del primer bloque: si no se cumple se ejecutan las instrucciones del segundo. Ejemplo: Instrucción alternativa doble que escribe la palabra POSITIVO si el contenido de la variable A es

mayor que y NEGATIVO si no lo es. A> SI A>0 ESCRIBIR POSITIVO SI A<0 ESCRIBIR NEGATIVO

  • Alternativa multiple. Controla la ejecución de varios conjuntos de instrucciones. Se ejecutará el conjunto que se encuentre relacionado con el valor que resulta de la evaluación de la expresión de tal forma que si este no aparece se ejecutará el último. Las distintas opciones tienen que ser disjuntas, es decir, sólo puede cumplirse una de ellas. Ejemplo: Instrucción alternativa múltiple que escribe una nota numérica entera de 0 a 10 con el nombre de la propia nota en letras. NOTA SI NOTA=0 ESCRIBIR CERO SI NOTA=1 ESCRIBIR UNO

SI NOTA=10 ESCRIBIR DIEZ SI NOTA=OTROS ESCRIBIR NOTA NO VALIDA

  • Instrucciones repetitivas Son aquellas que controlan la repetición de un conjunto de instrucciones denominado rango mediante la evaluación de una condición que se realiza dada nueva repetición o por medio de un contador asociado. Existen cuatro tipos de instrucciones:
  • Instrucción MIENTRAS (WHILE) Controla la ejecución del conjunto de instrucciones que configuran su rango, de tal forma que éstas se ejecutan mientras se cumpla la condición, que será evaluada siempre antes de cada repetición, es decir, mientras la condición sea CIERTA.
  • Instrucción REPETIR (REPEAT−UNTIL) Controla la ejecución del conjunto de instrucciones que configuran su rango de tal forma que estas se ejecutan hasta que se cumpla la condición que será evaluada siempre después de cada repetición, es decir, hasta que la condición sea CIERTA.

3.4.1. CONTADORES

Un contador es un objeto que se utiliza para contar cualquier evento que pueda ocurrir dentro de un programa. En general suslen contar desde forma natural desde 0 y de 1 en 1. Se utilizan dos operaciones básicas: Inicialización: Todo contador se inicializa a 0 si realiza cuenta natural o a Vi (Vi = Valor inicial) si se desea realizar otro tipo de cuenta.

CONTADOR 0

Contabilización o incremento: Cada vez que aparece el evento a contar se ha de incrementar el contador en 1 si se realiza cuenta natural o en la In (incremento) si se realiza otro tipo de cuenta.

CONTADOR CONTADOR +

3.4.2. ACUMULADORES

Son objetos que se utilizan en un programa para acumular elementos sucesivos con una misma operación. En general se utilizan para calcular sumas y productos, para utilizarlos hay que realizar sobre ellos dos operaciones básicas: Inicialización: Todo acumulador necesita ser inicializado con el valor neutro de la operación que va a acumular, que en el caso de la suma es 0 y del producto es 1.

SUMA 0

PRODUCTO 1

Acumulación: Cuando se hace presente en la memoria el elemento a acumular por la realización de una lectura o un calculo, se efectúa la acumulación del mismo por medio de la asignación:

SUMA SUMA + elemento PRODUCTO PRODUCTO * elemento 3.4.3. INTERRUPTORES O CONMUTADORES (SWITCHES) Los interruptores son objetos que se utilizan en un programa y solo pueden tomar dos valores (CIERTO y FALSO, 0 y1), realizando la función de transmitir información de un punto a otro dentro del programa. Un conmutador es un objeto que sólo puede tomar dos valores opuestos(CIERTO y FALSO, 1 y −1) que se utiliza para conmutar entre dos procesos distintos de forma alternativa. Es lo contrario al anterior. 3.5. TIPOS DE PROGRAMAS Programas lineales: Consisten en una secuencia de acciones primitivas (su ejecución es lineal en el orden en que han sido escritas).

Programas alternativos: Consisten en el anidamiento de acciones alternativas entremezcladas con instrucciones primitivas.

  • Programas cíclicos: Son aquellos en los que un conjunto de instrucciones de las existentes en el

programa se repite un número determinado o indeterminado de voces. Otra clasificación relacionada con la naturaleza de las operaciones que se realizan en la misma, es:

  • Programas de gestión: resuelven problemas de gestión.
  • Programas técnico−científicos: resuelven problemas matemáticos, físicos, etc.
  • Programas de diseño (CAD). Resuelven problemas de diseño. Programas de simulación. Intentan reflejar una situación real para facilitar su estudio y analizar los problemas que se pueden plantear.

Programas educativos (EAO). Utilizan las ventajas de la computadora para la docencia, convirtiéndola en un profesor para autodidactas.

  • Programas de inteligencia artificial. Se utilizan para simular el razonamiento humano.
  • Etcétera. 3.6. LENGUAJES DE PROGRAMACIÓN El primer lenguaje de programación que se utilizó fue el lenguaje máquina, que es el único que entiende la computadora y que se diferencia de unas a otras dependiendo del procesador que posean. Su alfabeto se compone exclusivamente de unos y ceros. El lenguaje ensamblador resultó de la simplificación del lenguaje máquina cambiando las cadenas de unos y ceros por símbolos nemotécnicos, existiendo una correspondencia de instrucciones de 1 a 1, con respecto al lenguaje máquina. Posteriormente surgieron los lenguajes de alto nivel, que se alejaban notablemente del lenguaje binario formando instrucciones con frases relativamente parecidas al lenguaje utilizado por las personas. Pueden clasificarse de la siguiente manera:
  • Según su parecido con el lenguaje natural.
  • Bajo nivel: Lenguajes máquina y ensambladores.
  • Alto nivel: Todos los demás.
  • Según la estructura de los programas.
  • Convencionales o línea a línea.
  • Estructurados.
  • Según la realización de los programas.
  • Funcionales.
  • Imperativos.
  • Según el tipo de proceso.
  • Interactivos o conversacionales:
  • Orientados al proceso por lotes (batch). TEMA 4.− PSEUDOCÓDIGO 4.2.PSEUDOCODIFICACIÓN DE UN PROGRAMA