Programa analítico 3






descargar 278.14 Kb.
títuloPrograma analítico 3
página1/9
fecha de publicación18.09.2015
tamaño278.14 Kb.
tipoPrograma
ley.exam-10.com > Documentos > Programa
  1   2   3   4   5   6   7   8   9




UNIVERSIDAD TECNOLÓGICA NACIONAL

Facultad Regional san francisco

APUNTES

NOMBRE DE LA ASIGNATURA
ALGORITMO Y ESTRUCTURA DE DATOS

CARRERA
INGENIERIA EN SISTEMAS DE INFORMACIÓN

DOCENTES
RIBOTTA, GABRIELA
AYUDANTES
LOPEZ, MARÍA LAURA

MAGLIANO, MATÍAS
INDICE DE CONTENIDO
PROGRAMA ANALÍTICO 3
CRITERIOS DE EVALUACIÓN 4
INTRODUCCION..................................................................................................................5
CAPITULO I. CONCEPTOS BÁSICOS Y METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DE COMPUTADORAS..................................6

1.1 Introducción...............................................................................................6

  • De los problemas a los programas.............................................................7

1.2 Definición de lenguaje...............................................................................8

1.3 Definición de algoritmo.............................................................................9

1.4 Algoritmos cotidianos................................................................................9

1.5 Definición de lenguajes algorítmicos........................................................9

1.6 Metodología para la solución de problemas por medio de computadora..9 1.7 Definición del problema..........................................................................10

1.8 Análisis del problema..............................................................................10

1.9 Diseño del algoritmo...............................................................................10

1.10 Codificación...........................................................................................10

1.11 Prueba y depuración..............................................................................10

1.12 Documentación......................................................................................11

1.13 Mantenimiento.......................................................................................11
CAPITULO II. PARADIGMAS DE

PROGRAMACIÓN…………….................................................................12

2.1 Introducción.............................................................................................12

2.2 Paradigma Funcional...............................................................................13

2.3 Paradigma Imperativo…..........................................................................14 2.4 Paradigma Orientado a Objetos……………...........................................15

2.5 Paradigma Ensamblador……...……………...........................................16

2.6 Paradigma Lógico………………….………...........................................16


CAPITULO III. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE

ALGORITMOS............................................................................................17

3.1 Tipos de datos..........................................................................................17

3.2 Expresiones..............................................................................................18

3.3 Operadores y operandos..........................................................................18 3.4 Identificadores como localidades de memoria........................................22

CAPITULO IV. TÉCNICAS DE DISEÑO..........................................................................24

4.1 Top down.................................................................................................24

4.2 Bottom up................................................................................................24


CAPITULO V. TÉCNICAS PARA LA FORMULACIÓN DE ALGORITMOS................26
5.1 Diagrama de flujo....................................................................................26

5.2 Pseudocodigo...........................................................................................27

5.3 Diagrama estructurado (nassi-schneiderman).........................................28
CAPITULO VI. ESTRUCTURAS ALGORITMICAS.....................................................29
6.1 Secuenciales.............................................................................................29

6.2 Condicionales..........................................................................................33

6.3 Estructuras cíclicas………......................................................................45


CAPITULO VII. ARREGLOS.............................................................................................57

7.1 Vectores...................................................................................................57

7.2 Matrices...................................................................................................59
CAPITULO VIII. MANEJO DE MÓDULOS......................................................................63
8.1 Definición, Función y Manipulación…...................................................58
BIBLIOGRAFIA.................................................................................................................. 65

Programa analítico

EJE TEMÁTICO Nº 1: ALGORITMOS

Unidad 1: INTRODUCCIÓN

-Problema, algoritmos, programas: conceptos básicos, criterios.

-Paradigma: definición, distintos paradigmas, diferencias. Uso y aplicación del paradigma imperativos.

-Desarrollos de algoritmos: etapas, métodos, conceptos de corrección, estilo y calidad.

-Diagrama de flujo: definición, principales gráficos.

-Lenguaje nemotécnico, uso, aplicación.

-Tipos de datos: conceptos. Constantes, variables. Tipos de datos simples elementales, valores y operaciones.

-Introducción al C, C++.
Unidad 2: ALGORITMOS COMPUTACIONALES

-Expresiones: definición, diferentes tipos. Entrada - Salida de datos. Asignación de información.

REF. 1: Trabajos prácticos de implementación de conceptos aprendidos en la unidad en el lenguaje C, mediante un taller donde se codificarán y ejecutarán programas - problemas de los prácticos dados.
Unidad 3: DISEÑOS DE ALGORITMOS

-Pautas básicas para el diseño general. La metodología modular y descendente.

-Las estructuras de control secuenciales, condicionales y repetitivas. Teorema fundamental de la programación estructurada.

-Estructuras compuestas.

REF. 1.
Unidad 4: SUBALGORITMOS

-Nociones de módulos, subprogramas: Procedimientos y funciones, argumentos y parámetros, formas de comunicación. Ambiente local y global.

-Procedimientos anidados.

REF. 1.
EJE TEMÁTICO Nº 2: ESTRUCTURAS DE DATOS

Unidad 5: ESTRUCTURAS ELEMENTALES DE DATOS

-Concepto de dato estructurado. Clasificación.

-Secuencia: definición, acceso y tratamiento.

-Arreglos: definición, dimensiones (vectores y matrices), operaciones, métodos de búsqueda, ordenamiento, mezcla.

-Dimensiones múltiples.

-Cadenas de caracteres.

-Conjuntos.

REF. 1.
Unidad 6: ESTRUCTURAS DE DATOS

-Estructuras y tipos de datos.

-Listas (simplemente vinculadas y circulares), pilas y colas (simple y circular).

-Problemas - algoritmos básicos de manipulación de las distintas estructuras: búsqueda, recorrido, borrado, inserción, etc..

-Ordenamiento

REF. 1.
Unidad 7: ALMACENAMIENTO DE DATOS EN ARCHIVOS

-Concepto de dato, registro, archivo.

-Concepto de método de acceso a los datos almacenados en archivos. Ubicación física de los datos. Organización de archivos.


CRITERIOS DE Evaluación
Evaluación diagnóstica: en la primera y segunda clase se realiza esta evaluación para conocer los conocimientos previos que tiene el grupo de alumnos, el grado de participación del grupo, el nivel de conocimientos incorporados a la estructura cognitiva.

Evaluación formativa: se realiza continuamente, analizando los contenidos significativos incorporados a sus conocimientos.

Condiciones para la regularidad:

-80 % de asistencia a clases teóricas - prácticas.

-Presentación de carpeta de trabajos prácticos individual.

-Presentación de trabajos prácticos procesados en término, nota promedio >= 4 (>= cuatro).

-Obtener nota mínima 4 (cuatro) en los dos parciales que se realizarán.

-Opción de participar de un recuperatorio de los dos parciales.

Evaluación final:
Individual, con presentación de análisis, codificación e implementación de una situación problemática asignada por la Cátedra.

La situación propuesta debe contemplar todos los contenidos desarrollados en la cátedra, la utilización de distintas estructuras de datos y la codificación e implementación de dicho trabajo en el lenguaje de programación que se utilizó en el laboratorio, durante el desarrollo de los trabajos prácticos.

En la presentación del examen se realizará un coloquio para permitir la defensa del trabajo procesado.

Examen escrito con análisis, representación gráfica y desarrollo de una situación problemática. Interrogatorio de contenidos conceptuales.

INTRODUCCION

El desarrollo de algoritmos es un tema fundamental en el diseño de programas por lo cual el alumno debe tener buenas bases que le sirvan para poder desarrollar de manera fácil y rápida sus programas.

Estos apuntes servirán de apoyo al docente en su labor cotidiana de enseñanza y al estudiante le facilitará desarrollar su capacidad analítica y creadora, para de esta manera mejorar su destreza en la elaboración de algoritmos que sirven como base para la codificación de los diferentes programas que tendrá que desarrollar a lo largo de su carrera.

CAPITULO I.

CONCEPTOS BÁSICOS Y METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DE COMPUTADORAS.

OBJETIVO EDUCACIONAL:
El alumno:


  • Conocerá la terminología relacionada con los algoritmos; así como la importancia de aplicar técnicas adecuadas de programación.

  • Conocerá la metodología en cada una de sus etapas .



1.1 Introducción
La computadora no solamente es una maquina que puede realizar procesos para darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza para llegar a esos resultados. Con la computadora además de lo anterior también podemos diseñar soluciones a la medida, de problemas específicos que se nos presenten. Mas aun, si estos involucran operaciones matemáticas complejas y/o repetitivas, o requieren del manejo de un volumen muy grande de datos.

El diseño de soluciones a la medida de nuestros problemas, requiere como en otras disciplinas una metodología que nos enseñe de manera gradual, la forma de llegar a estas soluciones.

A las soluciones creadas por computadora se les conoce como programas y no son mas que una serie de operaciones que realiza la computadora para llegar a un resultado, con un grupo de datos específicos. Lo anterior nos lleva al razonamiento de que un programa nos sirve para solucionar un problema especifico.

Para poder realizar programas, además de conocer la metodología mencionada, también debemos de conocer, de manera especifica las funciones que puede realizar la computadora y las formas en que se pueden manejar los elementos que hay en la misma.

Computadora: Es un dispositivo electrónico utilizado para procesar información y obtener resultados. Los datos y la información se pueden introducir en la computadora como entrada (input) y a continuación se procesan para producir una salida (output).
Proceso de información en la computadora




Datos de Proceso Datos de

entrada salida

Programa: Es el conjunto de instrucciones escritas de algún lenguaje de programación y que ejecutadas secuencialmente resuelven un problema especifico.
Organización física de una computadora


CPU

Unida de Unidad

Dispositivos de Control Arit.-Log. Dispositivos de Entrada Salida

Memoria
Dispositivos de Entrada: Como su nombre lo indica, sirven para introducir datos (información) en la computadora para su proceso. Los datos se leen de los dispositivos de entrada y se almacenan en la memoria central o interna. Ejemplos: teclado , scanners (digitalizadores de rastreo), mouse (ratón), trackball (bola de ratón estacionario), joystick (palancas de juego), lápiz óptico.

Dispositivos de Salida: Regresan los datos procesados que sirven de información al usuario. Ejemplo: monitor, impresora.

La Unidad Central de Procesamiento (C.P.U) se divide en dos:

  • Unidad de control

  • Unidad Aritmético - Lógica



Unidad de Control: Coordina las actividades de la computadora y determina que operaciones se deben realizar y en que orden; así mismo controla todo el proceso de la computadora.

Unidad Aritmético - Lógica: Realiza operaciones aritméticas y lógicas, tales como suma, resta, multiplicación, división y comparaciones.

La Memoria de la computadora se divide en dos:

  • Memoria Central o Interna

  • Memoria Auxiliar o Externa



Memoria Central (interna): La CPU utiliza la memoria de la computadora para guardar información mientras trabaja con ella; mientras esta información permanezca en memoria, la computadora puede tener acceso a ella en forma directa. Esta memoria construida internamente se llama memoria de acceso aleatorio (RAM).
La memoria interna consta de dos áreas de memoria:

La memoria RAM (Randon Access Memory): Recibe el nombre de memoria principal o memoria del usuario, en ella se almacena información solo mientras la computadora esta encendida. Cuando se apaga o arranca nuevamente la computadora, la información se pierde, por lo que se dice que la memoria RAM es una memoria volátil.
La memoria ROM (Read Only Memory): Es una memoria estática que no puede cambiar, la computadora puede leer los datos almacenados en la memoria ROM, pero no se pueden introducir datos en ella, o cambiar los datos que ahí se encuentran; por lo que se dice que esta memoria es de solo lectura. Los datos de la memoria ROM están grabados en forma permanente y son introducidos por el fabricante de la computadora.

Memoria Auxiliar (Externa): Es donde se almacenan todos los programas o datos que el usuario desee. Los dispositivos de almacenamiento o memorias auxiliares (externas o secundarias) mas comúnmente utilizados son: cintas magnéticas y discos magnéticos.

1.2 Definición de Lenguaje
Lenguaje: Es una serie de símbolos que sirven para transmitir uno o mas mensajes (ideas) entre dos entidades diferentes. A la transmisión de mensajes se le conoce comúnmente como comunicación.
La comunicación es un proceso complejo que requiere una serie de reglas simples, pero indispensables para poderse llevar a cabo. Las dos principales son las siguientes:

  • Los mensajes deben correr en un sentido a la vez.

  • Debe forzosamente existir 4 elementos: Emisor, Receptor, Medio de Comunicación y Mensaje.



Lenguajes de Programación

Es un conjunto de símbolos, caracteres y reglas (programas) que le permiten a las personas comunicarse con la computadora.

Los lenguajes de programación tienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada/salida, calculo, manipulación de textos, lógica/comparación y almacenamiento/recuperación.

Los lenguajes de programación se clasifican en:

  • Lenguaje Maquina: Son aquellos cuyas instrucciones son directamente entendibles por la computadora y no necesitan traducción posterior para que la CPU pueda comprender y ejecutar el programa. Las instrucciones en lenguaje maquina se expresan en términos de la unidad de memoria mas pequeña el bit (dígito binario 0 o 1).




  • Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las instrucciones se escriben en códigos alfabéticos conocidos como mnemotécnicos para las operaciones y direcciones simbólicas.




  • Lenguaje de Alto Nivel: Los lenguajes de programación de alto nivel (BASIC, pascal, cobol, frotran, etc.) son aquellos en los que las instrucciones o sentencias a la computadora son escritas con palabras similares a los lenguajes humanos (en general en ingles), lo que facilita la escritura y comprensión del programa.



    1. Definición de Algoritmo


La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX.

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema especifico.

1.4 Tipos de Algoritmos


  • Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras.

  • Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.



1.5 Lenguajes Algoritmicos
Es una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.

Tipos de Lenguajes Algoritmicos


  • Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo).

  • No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocodigo).


1.6 Metodología para la solución de problemas por medio de computadora
1.7 Definición del Problema
Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa. Es importante que se conozca lo que se desea que realice la computadora; mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente etapa.



    1. Análisis del Problema


Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:

Los datos de entrada.

Cual es la información que se desea producir (salida)

Los métodos y fórmulas que se necesitan para procesar los datos.
Una recomendación muy practica es el que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.



    1. Diseño del Algoritmo


Las características de un buen algoritmo son:

Debe tener un punto particular de inicio.

Debe ser definido, no debe permitir dobles interpretaciones.

Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema.

Debe ser finito en tamaño y tiempo de ejecución.

1.10 Codificación
La codificación es la operación de escribir la solución del problema (de acuerdo a la lógica del diagrama de flujo o pseudocodigo), en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel.

1.11 Prueba y Depuración
Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solución sin errores se le llama depuración.
La depuración o prueba resulta una tarea tan creativa como el mismo desarrollo de la solución, por ello se debe considerar con el mismo interés y entusiasmo.

Resulta conveniente observar los siguientes principios al realizar una depuración, ya que de este trabajo depende el éxito de nuestra solución.

1.12 Documentación
Es la guía o comunicación escrita es sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas.

A menudo un programa escrito por una persona, es usado por otra. Por ello la documentación sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).

La documentación se divide en tres partes:
Documentación Interna

Documentación Externa

Manual del Usuario


  • Documentación Interna: Son los comentarios o mensaje que se añaden al código fuente para hacer mas claro el entendimiento de un proceso.




  • Documentación Externa: Se define en un documento escrito los siguientes puntos:

Descripción del Problema

Nombre del Autor

Algoritmo (diagrama de flujo o pseudocodigo)

Diccionario de Datos

Código Fuente (programa)


  • Manual del Usuario: Describe paso a paso la manera como funciona el programa, con el fin de que el usuario obtenga el resultado deseado.



1.13 Mantenimiento
Se lleva acabo después de terminado el programa, cuando se detecta que es necesario hacer algún cambio, ajuste o complementación al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado.

CAPITULO II.

PARADIGMAS DE PROGRAMACIÓN.

OBJETIVO EDUCACIONAL:
El alumno:


  • Conocerá las características de los principales paradigmas de programación utilizados.



2.1 Introducción

 Colección de patrones conceptuales que modelan: la forma de razonar sobre problemas, de formular algoritmos y a la larga de estructurar programas.
  1   2   3   4   5   6   7   8   9

Añadir el documento a tu blog o sitio web

similar:

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analìtico

Programa analítico 3 iconPrograma analítico

Programa analítico 3 iconPrograma analìtico

Programa analítico 3 iconPrograma analítico y planeacióN

Programa analítico 3 iconPrograma Analítico de Asignatura






© 2015
contactos
ley.exam-10.com