Upload
christian-arroyo-marchan
View
67
Download
3
Embed Size (px)
Citation preview
Trabajo de exposicionCURSO ALG 2INTEGARANTES: ARROYO MARCHAN CHRISTIAN GARCIA SANCHEZ ANDERSON PACHERREZ SERNAQUE KEN
La resolución de problemas empleando computadoras
La solución de un problema por computadora, requiere de nueve pasos, dispuestos de tal forma que cada uno es dependiente de los anteriores, lo cual indica que se trata de un proceso complementario y por lo tanto cada paso exige el mismo cuidado en su elaboración. Conduce a la escritura de un programa y a su ejecución en la misma. Aunque el proceso de diseñar programas es esencialmente un proceso creativo, se pueden considerar una serie de fases o pasos comunes, que generalmente deben seguir todos los programadores.
Los nueve pasos de la metodología son los siguientes:
FASE DE RESOLUCION DEL PROBLEMA
Definición del problema Está dada por el enunciado del problema.
Análisis del problema Consiste en establecer una serie de preguntas, algunas preguntas son:
¿Con qué cuento?
¿Qué hago con esos datos?
¿Qué se espera obtener?
Diseño del algoritmo Una vez analizado el problema, se diseña una solución que conducirá a un algoritmo que resuelva el problema.
Verificación del algoritmo pruebas consisten en dar valores a la variable e ir probando el algoritmo paso a paso.
FASE DE IMPLEMENTACION
Codificación del algoritmo Consiste en escribir la solución del problema (de acuerdo al pseudocodigo)
Ejecución del programa Ejecutar el programa después del ser compilado.
Verificación del programa Revisar que el programa de los resultados que el usuario quiere, hay que revisar si hay algún error el cual puede ser de tipo lógico, de semántica o ejecución.
Documentación Es la guía o comunicación escrita que sirve como ayuda para usar el programa.
• Mantenimiento Se lleva a cabo después de terminado el programa, cuando se ha estado trabajando un tiempo, y se detecta que es necesario hacer un cambio.
el propósito del análisis del problema:
El propósito del análisis de un problema es ayudar al programador para llegar a una cierta comprensión de la naturaleza del problema.
Análisis del problema
El grupo identifica la(s) causa(s) principal(es) del mismo.
Definición del problema
Es el enunciado del problema, el cual debe ser claro y completo.
Especificación de datos de entrada
Donde va a hacer un almacenamiento, va a procesar el programa al sistema hacia la base de datos.
Especificación de datos de salida
Donde los datos derivados, es decir, obtenidos a partir de los datos de entrada.
CARACTERISTICAS DE LOS ALGORITMOS
Las características fundamentales que debe cumplir todo algoritmo son:
preciso e indicar el orden de realización de cada paso.
definido
Finito
legibles
Diseño del algoritmo
Diseño descendente La programación descendente o "Top - Down" es el proceso mediante el cual un problema se descompone en una serie de niveles o pasos sucesivos de refinamiento (stepwise).
Divide y vencerás El término divide y vencerás (DYV) hace referencia a uno de los más importantes paradigmas de diseño algorítmico. El método está basado en la resolución recursiva de un problema dividiéndolo en dos o más subproblemas de igual tipo o similar.
Refinamientos por pasos El diseño de un algoritmo no se hace de una sola vez, sino que se va resolviendo en una secuencia de pasos (llamados pasos de refinamiento).
Herramienta de representación
Diagrama de flujo Pseudocodigo
Diagramas Nassi/shneiderman-S(Chapin)
Método Warnier Es una metodología estructurada, formada por un conjunto de normas y herramientas que nos permiten solucionar un problema de forma clara y sencilla
Método Jackson La metodología de Jackson es un proceso sistemático para la realización de un programa, utilizando la técnica del diseño descendente (Top-Down),
Método Bertini Al igual que el de Jackson la representación de programas es en forma de árbol denominada diagrama arborescente de Bertini.
Método tabourier Se trata de una representación de programas en forma de árbol denominado Diagrama de Tabourier. Para ello se puede utilizar a si mismo la terminología común.
Ejemplo mediante un cuadro comparativo
ARREGLO UNIDIMENCIONAL (VECTORES)
Es un tipo de datos estructurado que está formado por una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. Los datos que se guarden en los arreglos todos deben ser del mismo tipo.
EJEMPLO
Crea un array o arreglo unidimensional con un tamaño de 5, asignale los valores numéricos manualmente (los que tu quieras) y muestralos por pantalla.
Proceso tamaño
//Declaramos variables
Definir num como entero;
Definir TAMANIO como entero;
TAMANIO<-5
//Definimos el array
Dimension num[TAMANIO]
//Asignamos valores
num[1]<-1
num[2]<-2
num[3]<-3
num[4]<-4
num[5]<-5
//Recorremos el array y mostramos su contenido
Para i<-1 Hasta TAMANIO Con Paso 1 Hacer
escribir num[i]
Fin Para
FinProceso
ARREGLO BIDIMENCIONAL (MATRICES)
Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo bidimensional está simultáneamente en una fila y en una columna.
En matemáticas, a los arreglos bidimensionales se les llama matrices, y son muy utilizados en problemas de Ingeniería
EJEMPLO
Crear una matriz 2x2 que almacene los siguientes valores: 10, 20, 30, 40. Proceso valor
Proceso valor
//creamos la matriz y le damos un numero de filas y columnas
Dimension matriz[2,2];
//le damos valores a la matriz
matriz[1,1]<-10;//fila 1 columna 1
matriz[1,2]<-20;//fila 1 columna 2
matriz[2,1]<-30;//fila 2 columna 1
matriz[2,2]<-40;//fila 2 columna 2
//imprimimos los datos para su visualizacion
Escribir "el dato que hay en la fila 1 y columna 1",matriz[1,1];
Escribir "el dato que hay en la fila 1 y columna 2",matriz[1,2];
Escribir "el dato que hay en la fila 2 y columna 1",matriz[2,1];
Escribir "el dato que hay en la fila 2 y columna 2",matriz[2,2];
FinProceso