UNIDAD 2 - Algoritmos Fundamentos de Programacion

63
INSTITUTO TECNOLOGICO DE TAPACHULA PROGRAMA EDUCATIVO Ing. en Sistemas Computacionales MATERIA Fundamentos de Programación DOCENTE ESTUDIANTES: 1

description

fundamentos de programacion

Transcript of UNIDAD 2 - Algoritmos Fundamentos de Programacion

INSTITUTO TECNOLOGICO DE TAPACHULA

PROGRAMA EDUCATIVOIng. en Sistemas Computacionales

MATERIAFundamentos de Programacin

DOCENTE

ESTUDIANTES:

INDICE

INTRODUCCION22.1 Anlisis de problemas52.2 Representacin de algoritmos: grfica y pseudocdigo72.3 Diseo de algoritmos aplicados a problemas502.4 Diseo algoritmo de funciones52CONCLUSION54BIBLIOGRAFIA55

INTRODUCCION

En el siguiente trabajo pretendemos presentar una serie de concepto y definiciones propios del estudio de los Algoritmos, su anlisis y diseo.En el mismo podremos encontrar los conceptos de algoritmo y algunos de sus componentes, anlisis y diseo. Tambin veremos los diferentes tipos de formas y tamaos o medidas en que se pueden almacenar y representar los datos y estructuras en un algoritmo o programa. En ese mismo orden encontraremos las diferentes tcnicas para disearlos como son el mtodo de la fuerza bruta, el voraz, divide y vencers, programacin dinmica, de vuelta atrs, entre otros.De igual forma podremos ver las definiciones y algunas caractersticas, reglas, normas, tipos de algoritmos de bsqueda y ordenacin as como sus aplicaciones.Finalmente veremos los que es la verificacin y derivacin de programas, donde daremos los conceptos bsicos de semntica y sus tipos haciendo mayor nfasis en la semntica axiomtica, la recursividad e iteracin, los diseos de estos ltimos, as como los tpicos ciclos utilizados en algoritmos y programas y los paso a tener en cuenta al momento de desarrollar un algoritmo iterativo o recursivo.

Unidad

2

Algoritmos

2.1 Anlisis de problemas

Cuando un usuario plantea un programador, un problema que resuelve mediante su ordenador, por lo general ese usuario tendr conocimientos de informtica. Al abordar un problema que se quiere resolver mediante un ordenador, el programador necesita de experiencia del experto del dominio para entender el problema. El anlisis de problema tiene las siguientes especificaciones

EntradaProcesoSalidaLa funcin del anlisisLa parte esencial del anlisis de la planeacin y diseo la constituye el anlisis de los sistemas hipotticos, desde el punto de vista de los objetivos, de las proposiciones, y de las condiciones limitativas.

La funcin del anlisis es deducir todas las consecuencias, a fin de seleccionar un camino ptimo. Luego se deben comparar estas consecuencias con los objetivos iniciales.

Herramientas para el anlisisDespus de decidir cuales datos se deben analizar, es preciso analizar un conjunto adecuado de herramientas. Para ser u buen ingeniero en sistemas, se necesita conocer mayor nmero de herramientas de las que normalmente estn asociadas con las ramas existentes de la ciencia de la ingeniera. Esto no quiere decir que necesite ser un experto manipulador de todas las herramientas, pero si es necesario algn conocimiento para realizar lo siguiente:

Seleccionar la herramienta correcta para un anlisis dado.Reconocer el momento en que deba retroceder un poco para adquirir mayores facilidades con determinada herramienta-Consultar con los expertos, y estar en capacidad de entenderse en el mismo lenguaje.Conocer los lmites de utilizacin de determinada herramienta.Conocer el momento en que se debe detener el anlisis y dar una decisin.

EJEMPLOS DEL PROFESOR

ANALIZAR: La suma de 2 nmeros 8+10.ENTRADAS: 10 Y 8, PROCESO: S=8+10, SALIDA: S.ANALIZAR: La suma de dos nmerosENTRADAS: A, B; PROCESO: S=A+B; SALIDA: SANALIZAR: El rea de un circuloENTRADAS: r, pi; PROCESO: A=Pi*r*r; SALIDA: AANALIZAR: El rea de un trianguloENTRADAS: b, h; PROCESO: A=b*h/2; SALIDA: AANALIZAR: El total a pagar de un alumno a una cafetera si se compr un refresco y dos tortas del mismo tipo.ENTRADAS: 1, 2, PR, TR; PROCESO: TAP=1PR*2*PT; SALIDA: TAPANALIZAR: El total a pagar de un alumno a un cafetera si compr tortas y refrescos del mismo tipo.ENTRADAS: TT, PT, PR, TR; PROCESO: TAP=TR*PR+TT*PT; SALIDA: TAPANALIZAR: El total a pagar de un alumno a un cafetera si compr tortas y refrescos del mismo tipo. La cafetera ofrece el 15% de descuento en todos sus productos.ENTRADAS: TT, PT, PR, TR; PROCESO: TAP= (TR*PR+TT*PT)*0.85; SALIDA: TAP

2.2 Representacin de algoritmos: grfica y pseudocdigo

Los diagramas de flujo son una manera de representar visualmente el flujo de datos a travs de sistemas de tratamiento de informacin. Los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.Un diagrama de flujo u organigrama es una representacin diagramtica que ilustra la secuencia de las operaciones que se realizarn para conseguir la solucin de un problema. Los diagramas de flujo se dibujan generalmente antes de comenzar a programar el cdigo frente a la computadora. Los diagramas de flujo facilitan la comunicacin entre los programadores y la gente del negocio. Estos diagramas de flujo desempean un papel vital en la programacin de un problema y facilitan la comprensin de problemas complicados y sobre todo muy largos. Una vez que se dibuja el diagrama de flujo, llega a ser fcil escribir el programa en cualquier idioma de alto nivel. Vemos a menudo cmo los diagramas de flujo nos dan ventaja al momento de explicar el programa a otros. Por lo tanto, est correcto decir que un diagrama de flujo es una necesidad para la documentacin mejor de un programa complejo.

Reglas para dibujar un diagrama de flujo.Los Diagramas de flujo se dibujan generalmente usando algunos smbolos estndares; sin embargo, algunos smbolos especiales pueden tambin ser desarrollados cuando sean requeridos. Algunos smbolos estndares, que se requieren con frecuencia para diagramar programas de computadora se muestran a continuacin:Inicio o fin del programa

Pasos, procesos o lneas de instruccin de programa de computo

Operaciones de entrada y salida

Toma de decisines y Ramificacin

Conector para unir el flujo a otra parte del diagrama

Cinta magntica

Disco magntico

Conector de pagina

Lneas de flujo

Anotacin

Display, para mostrar datos

Enva datos a la impresora

Observacin: Para obtener la correcta elaboracin de los smbolos, existen plantillas. Las puedes conseguir en Papeleras.

Smbolos grficosDentro de los smbolos fundamentales para la creacin de diagramas de flujo, los smbolos grficos son utilizados especficamente para para operaciones aritmticas y relaciones condicionales. La siguiente es una lista de los smbolos ms comnmente utilizados:

+Sumar-Menos*Multiplicacin/DivisinMs o menos=Equivalente a>Mayor que=100TAP=TAP*0.90"El total a pagar es TAPFIN

FV

2.- REALIZAR DIAGRAMA DE FLUJO QUE CALCULE E IMPRIMA EL TOTAL A PAGAR EN UNA DISTRIBUIDORA DE LLANTAS SI ESTA EN LA COMPRA DE 5 LLANTAS O MAS TIENE UN VALOR DE 700 PESOS CADA LLANTA DE LO CONTRARIO 800.INICIOTLLTLL=0, TAP=0TAP=TLL*PLLTAP>=5TAP=TLL*700"El total a pagar es TAPFINTAP=TLL*800

FV

3.- REALIZAR DIAGRAMA DE FLUJO QUE CALCULE E IMPRIMA EL TOTAL A PAGARPOR UN CLIENTE A UNA TIENDA DE ROPA SI EN ELLA COMPRO PANTALONES Y CAMISAS DEL MISMO TIPO RESPECTIVAMENTE NOTA: LA TIENDA DE ROPA OFRECE LOS SIGUIENTES DESCUENTOS SI EL TOTAL A PAGAR ES MAYOR A 1000 PESOS PERO MENOS QUE 5000, 10% DE DESCUENTO; Y SI EL TOTAL A PAGAR ES MAYOR O IGUAL A 5000, 15% DE DESCUENTO.TAP=TAP*0.90TAP>=1000 y TAP