BLOQUE I: DISEÑA Y ELABORA ALGORITMOS

INFORMÁTICA II BLOQUE I: DISEÑA Y ELABORA ALGORITMOS
Lectura: ¿QUÉ ES UN ALGORITMO? El diccionario de la Real Academia Española define r!"#e$a como un “conjunto de hechos o circunstancias que dificultan la consecución de algún fin. Proposición dirigida a averiguar el modo de obtener un resultado cuando ciertos datos son conocidos . U% a#&!r't$! es un conjunto finito de instrucciones o pasos que sirven para ejecutar una tarea o resolver un problema. !a palabra algoritmo deriva del nombre del matem"tico "rabe Al-Khwarizmi# que vivió entre los siglos $%% & $%%%. 'eneralmente los algoritmos se presentan a diario con las diversas vivencias de las personas# todo lo que nos rodea es siempre una secuencia de pasos que nos llevan a reali(ar nuestras labores en ocasiones ordenadamente. En la vida cotidiana empleamos algoritmos en multitud de ocasiones para resolver diversos problemas# como por ejemplo para hacer funcionar una lavadora )conjunto de instrucciones pegadas en la tapa de la m"quina*# para tocar música )partituras*# para construir un aeroplano a escala )e+presados en las instrucciones*# para hacer trucos de magia )pasos para hacer el truco* o# incluso# para hacer recetas de cocina )pasos de la receta*. ,tros ejemplos# como el algoritmo de la división para calcular el cociente de dos números o el algoritmo de Euclides para calcular el m"+imo común divisor de dos enteros positivos pertenecen al "mbito de las matem"ticas. -e un modo m"s formal# u% a#&!r't$! e( u%a (ecue%c'a )'%'ta *e '%(trucc'!%e( rea#'+a"#e(, %! a$"'&ua(, cu-a e.ecuc'/% c!%*uce a u%a re(!#uc'/% *e u% r!"#e$a0 El algoritmo nos da la solución gen.rica a un problema & lo podremos emplear todas las veces que se nos presente ese mismo problema# por ejemplo/ el algoritmo de la división es gen.rico e independiente de los números que tengamos que dividir. 0na ve( descubierto un algoritmo para efectuar una tarea# la reali(ación de .sta &a no requiere entender los principios en que se basa dicho algoritmo# pues el proceso se reduce a seguir las instrucciones del mismo. Por ejemplo# podemos hacer una división siguiendo el algoritmo sin entender por qu. funciona el algoritmo. !a inteligencia requerida para llevar a cabo la tarea est" codificada en el algoritmo. 0n algoritmo puede ser escrito en lenguaje natural# pero esta descripción puede ser ambigua# por lo que se utili(an diferentes m.todos de representación# que permiten evitar dicha ambig1edad & al mismo tiempo que sean f"cilmente codificables. Los métodos más usuales para la representación de algoritmos son: • • • Descripción narrada Diagrama de flujo Pseudocódigo

DESCRI1CI2N NARRADA Es la forma m"s sencilla de describir o e+presar un algoritmo. 2onsiste en hacer un relato de la solución en lenguaje natural. Por ejemplo/ Algoritmo )en descripción narrada* para calcular la suma de 3 números/ 4. ,btener los 3 números a sumar. 3. 5umar los números. 6. 7ostrar el resultado. El uso del lenguaje natural provoca frecuentemente que la descripción sea imprecisa & poco confiable# por lo que este tipo de representación no es recomendable. DIAGRAMA DE FLU3O Es la representación gr"fica de un algoritmo. 0tili(a s8mbolos normali(ados# con los pasos del algoritmo escritos en el s8mbolo adecuado & los s8mbolos unidos por flechas# denominadas “l8neas de flujo # que indican el orden en que los pasos deben ser ejecutados.

Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1

Profesora:

El -iccionario !arousse define el t. !a $et!*!#!&6a es la ciencia que aplica este m.n Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: . IDENTIFICACI2N DEL 1ROBLEMA !a identificación del problema es una fase mu& importante en la metodolog8a# pues de ella depende el desarrollo posterior en busca de la solución. !os programas son algoritmos codificados con un lenguaje no ambiguo cu&a sinta+is & sem"ntica 9entiende9 la computadora. !a estructura de un algoritmo debe estar integrada por tres partes/ Entrada# Proceso & 5alida. 0n algoritmo debe ser finito. El nivel de inteligencia que simula la m"quina est" limitado por la inteligencia que podamos comunicarle por medio de algoritmos. 0n problema bien delimitado es una gran a&uda para que el proceso general avance bien: un problema mal definido provocar" desv8os conceptuales que ser"n dif8ciles de remediar posteriormente.todo# que a lo largo de la historia ha llamado la atención de gran cantidad de filósofos & cient8ficos. 0n algoritmo debe estar definido. E+isten muchos tipos de metodolog8as# como la metodolog8a de investigación# metodolog8a de enseñan(a. En el "mbito de las computadoras# los algoritmos se e+presan como programas.# as8 como la metodolog8a de solución de problemas# que aplicamos constantemente en la vida diaria.rmino $5t!*! como “el conjunto de operaciones ordenadas con que se pretende obtener un resultado . 5i se sigue un algoritmo se debe terminar en algún momento o sea# debe tener un número finito de pasos. !as m"quinas sólo pueden reali(ar tareas algor8tmicas. En esta etapa es fundamental el an"lisis de la información inicial )entrada* con el fin de distinguir los datos pertinentes de los que no lo son# de manera que se pueda elegir la configuración m"s conveniente respecto a las soluciones posibles. En otras palabras# debemos transformar el algoritmo conceptual en un conjunto de instrucciones & representar estas últimas en un lenguaje sin ambig1edad. 'racias a la capacidad para comunicar nuestros pensamientos mediante algoritmos# podemos construir m"quinas cu&o comportamiento simula# en alguna medida# la inteligencia. 5e concibió para superar las dos principales desventajas de los diagramas de flujo/ lento de crear & dif8cil de modificar sin un nuevo proceso de redibujo.todo. !a entrada se refiere a algo que e+iste & es utili(ado por el algoritmo para transformarlo en los resultados que uno planifica. 5i no encontramos un algoritmo# es posible que la ejecución est.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS 1SEUDOC2DIGO El pseudocódigo en un lenguaje de especificación de algoritmos que utili(a palabras reservadas & e+ige la indentación# o sea# sangr8a en el margen i(quierdo de algunas l8neas. Es una herramienta mu& efectiva para el seguimiento de la lógica de un algoritmo & para transformar con facilidad los algoritmos a programas. CARACTER4STICAS DE LOS ALGORITMOS: !as caracter8sticas fundamentales que debe cumplir todo algoritmo son/ • • • 0n algoritmo debe ser preciso e indicar el orden de reali(ación de cada paso. fuera de las capacidades de las m"quinas.aprendi(aje# etc. !a resolución de los problemas consta de 5 etapas que garanti(an la llegada correcta a la solución/ identificación del problema# planteamiento de alternativas de solución# elección de una alternativa de solución# elección de una alternativa# desarrollo de la solución & evaluación de esta. Pero en este caso hablaremos espec8ficamente de la solución de problemas que podemos resolver mediante el uso de la computadora. As8 pues# si queremos que una computadora efectúe una tarea# primero debemos descubrir un algoritmo para llevarla a cabo: programar el algoritmo en la m"quina consiste en representar ese algoritmo de modo que se pueda comunicar a una m"quina. 5i encontramos un algoritmo para dirigir la ejecución de una tarea# podemos construir una m"quina para llevarla a cabo siempre que la tecnolog8a ha&a avan(ado lo suficiente. METODOLOG4A DE SOLUCI2N DE 1ROBLEMAS Antes de hablar de metodolog8as de solución de problemas debes tener mu& claro el concepto de m. <ambi. 5i se sigue un algoritmo dos veces# se debe obtener el mismo resultado cada ve(.

1 =uentes/ 1 Pérez Chávez.diagramas.s de un algoritmo & un diagrama de flujo para planear el viaje.com>app@%-A3BB?C=-PB?B3DmsgA4?D-. En esta fase se deben “pulir los procesos &a reali(ados & tratar de llevarlos a un grado ma&or de optimidad# pues el algoritmo m"s eficiente en la solución de un problema es el que llega a su objetivo final con la ma&or econom8a de procedimientos que sea posible.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS deben definirse los datos de salida que garanticen la continuidad del proceso para que sea m"s f"cil eliminar las e+pectativas negativas.melod&soft. Es útil tratar de plantear la ma&or cantidad de alternativas posibles de solución# pues de esta forma las probabilidades aumentan a favor de encontrar la v8a correcta.s de la definición del problema & del an"lisis de los datos de entrada# el proceso continúa con el an"lisis de las alternativas de solución.s de decidir cu"l es la mejor alternativa de todas# se llega a la etapa de la solución. http/>>boards?.html SITUACI2N DIDÁCTICA: El "rea de ciencias sociales est" organi(ando un viaje de estudios al 7useo de Gistoria Hatural en 5an -iego# 2alifornia. *e e%*'e%*! *e #a ! c'/% *e tra%( !rte. En esta fase# a partir de los datos relacionados con la alternativa seleccionada# se aplican las operaciones necesarias para solucionar el problema. "1*"+. S$ %D $O& '(. A ti te han encargado enlistar las actividades necesarias a trav. En los procesos industriales a este procedimiento se le llama control de la calidad & consiste en determinar que la solución obtenida es lo que esperaba conseguir comprobando que el resultado sea correcto. Pá)s.*'a&ra$a *e )#u. nfor!ática ". 5e debe destacar que no es conveniente e+tender demasiado el número de alternativas# pues si el número de . -eber" elegir la alternativa que sea la m"s adecuada para la solución de problemas# tomando en cuenta las caracter8sticas del problema & las caracter8sticas que deber" tener la solución# as8 como los elementos# datos o información con la que cuentas.I !os organi(adores pueden elegir contratar una de dos opciones de transporte/ rentar un autobús de lujo cuesta J3B#BBB. 1LANTEAMIENTO DE ALTERNATI7AS DE SOLUCI2N -espu.e? ¿Cu9%t! (e *e"e a&ar ara a('(t'r.n debe ser determinada en función de la optimidad# es decir# las operaciones deben llegar a la solución por el camino m"s corto para garanti(ar la ma&or eficiencia en el funcionamiento.BB. DESARROLLO DE SOLUCI2N -espu. 5i la alternativa es la óptima# llevar" a la solución deseada que fue prevista en la identificación del problema.3Bm. #achillerato. Esta fase es mu& importante porque de la elección reali(ada depende el avance final hasta la solución. !a selección de los procesos tambi.! ara #a%ear e# 8'a.BB & rentar un autobús sencillo les costar8a J4K#BBB. El precio por persona depender" de la cantidad de asistentes. ELECCI2N DE UNA ALTERNATI7A -espu.s de tener todo el repertorio de alternativas# es necesario pasar a otra etapa/ la elección de la mejor entre todas las posibilidades. !a orientación hacia delante supone la irreversibilidad si la decisión es acertada o una “reversibilidad costosa # pues si la decisión no es acertada# es necesario retroceder# lo que afecta la “optimidad del proceso. E7ALUACI2N DE LA SOLUCI2N !uego de haber desarrollado la solución queda aún una etapa# que es la evaluación. Por lo general# la solución de un problema puede alcan(arse por distintas v8as.stas es demasiado alto# se presentar" una ma&or dificultad para elegir la mejor de todas# que es en definitiva el objetivo del proceso. e( *ec'r *e #u. Por tanto# es necesario que cada alternativa sea bien anali(ada para que la toma de decisiones sea bien justificada. Cecilia.2AEB http/>>FFF. ¿Qu5 *e"e( (a"er ara #!&rar e#a"!rar e# a#&!r't$! .! ! (e%c'##!? Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .com>conceptos.

BLOQUE I: DISEÑA Y ELABORA ALGORITMOS : Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .

ste el proceso tenga dos o m"s caminos posibles. Dec'('/%. 5e utili(a para representar una pregunta o interrogante que tiene al menos dos respuestas posibles# para cada una de las cuales ha& un camino de continuación del proceso. Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: . 5e les llama diagramas de flujo porque los s8mbolos utili(ados se conectan por medio de flechas para indicar la secuencia de la operación. C!%ect!r: Representa un punto de cone+ión entre procesos. • • • • CARACTER4STICAS QUE DEBE CUM1LIR UN DIAGRAMA DE FLU3O • E+iste siempre un camino que permite llegar a una solución )finali(ación del algoritmo*. 5e utili(a cuando es necesario dividir un diagrama de flujo en varias partes o procesos dentro de la misma hoja# por ra(ones de espacio o simplicidad. En este s8mbolo se indican los valores in8ciales que deber" recibir el proceso. !a ma&or8a de las veces se utili(an números en los c8rculos para hacer la referencia. 5e usa para representar un evento o proceso determinado que es controlado dentro del diagrama de flujo en que se encuentra# sumar# restar & cualquier operación aritm. -entro de su interior se anotar" la variable con el resultado final o el mensaje que represente el resultado del algoritmo.9 ó 9=%H9 dentro de la figura para hacerlo m"s e+pl8cito. Esto trajo como consecuencia que sólo aquel que conoc8a sus s8mbolos# los pod8a interpretar. S4MBOLOS UTILI. De( #'e&ue *e re(u#ta*!(: Este s8mbolo se utili(a para mostrar un resultado# el cual puede representar la solución al problema que se pretende resolver & que fue conseguida a trav.ADOS !os s8mbolos que se utili(an para diseño se someten a una normali(ación# es decir# se hicieron s8mbolos casi universales# &a que# en un principio cada usuario podr8a tener sus propios s8mbolos para representar sus procesos en forma de -iagrama de flujo. <radicionalmente se colocan las palabras 9%H%2%. 1r!ce(!: Es el s8mbolo m"s comúnmente utili(ado.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS Lectura: DIAGRAMAS DE FLU3O DEFINICI2N Es la representación gr"fica de flujo de un algoritmo o de secuencia rutinarias 5e basan en la utili(ación de diversos s8mbolos para representar operaciones espec8ficas. !os siguientes s8mbolos son los principales/ DESCRI1CI2N DE LOS S4MBOLOS • F#u. !o anterior hace que a partir de . 5e usa para conectar procesos contenidos dentro de la misma hoja. Esto se hace asign"ndoles letras o nombres de variables para cada uno de los valores & anotando estas letras en el interior de la figura.! *e *at!(: %ndica la secuencia )flujo* de operación del diagrama# que a su ve( indican el sentido & tra&ectoria.s del resto del diagrama. E%tra*a *e *at!(: Representa una operación de entrada. • • I%'c'! ! )'%: 5e utili(a para señalar el comienzo as8 como el final de un diagrama.tica es un proceso. • E+iste un único inicio del proceso. !a simbolog8a utili(ada para la elaboración de diagramas de flujo es variable & debe ajustarse a las normas preestablecidas universalmente para dichos s8mbolos o datos.

se espera obtener del diagrama de flujo. 0n buen diagrama de flujo reempla(a varias p"ginas de te+to. Los pasos a seguir para construir el diagrama de flujo son: Establecer el alcance del proceso a describir.n lo emplear" & cómo. Estas estructuras se clasifican de acuerdo con su complejidad en/ Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .n. 5e identifican los pasos redundantes# los flujos de los reLprocesos# los conflictos de autoridad# las responsabilidades# los cuellos de botella# & los puntos de decisión. %dentificar qui. 5on una e+celente herramienta para capacitar a los nuevos empleados & tambi. %dentificar & listar las principales actividades>subprocesos que est"n incluidos en el proceso a describir & su orden cronológico. Establecer el nivel de detalle requerido. -eterminar los l8mites del proceso a describir. -e esta manera quedar" fijado el comien(o & el final del diagrama. El cerebro humano reconoce f"cilmente los dibujos. 7uestran las interfaces clienteLproveedor & las transacciones que en ellas se reali(an# facilitando a los empleados el an"lisis de las mismas. %dentificar & listar los puntos de decisión. • Permiten identificar los problemas & las oportunidades de mejora del proceso. • • ESTRUCTURAS ALGOR4TMICAS !as estructuras de operación de programas son un grupo de formas de trabajo# que permiten# mediante la manipulación de variables# reali(ar ciertos procesos espec8ficos que nos lleven a la solución de problemas.n a los que desarrollan la tarea# cuando se reali(an mejoras en el proceso. completo & describa con e+actitud el proceso elegido. DESARROLLO DEL DIAGRAMA DE FLU3O Las siguientes son acciones previas a la realización del diagrama de flujo: • • • • • • • • • • • %dentificar las ideas principales a ser incluidas en el diagrama de flujo. 2onstruir el diagrama respetando la secuencia cronológica & asignando los correspondientes s8mbolos. Asignar un t8tulo al diagrama & verificar que est.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS • E+iste un único punto de fin para el proceso de flujo )salvo del rombo que indica una comparación con dos caminos posibles*.s de mostrarlo como un dibujo. =recuentemente el comien(o es la salida del proceso previo & el final la entrada al proceso siguiente. -efinir qu. 7ENTA3AS DE LOS DIAGRAMA DE FLU3O • =avorecen la comprensión del proceso a trav. 5i el nivel de detalle definido inclu&e actividades menores# listarlas tambi.

shtml Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .# %l res.shtml http/>>FFF.monografias.L %nicio 3.!a /in Para conocer m"s# consultar tambi. # S.com>trabajos?3>diagramaLdeLflujo>diagramaLdeLflujo3. Proceso/ umaA A ! B 5alida/ Resultado es uma A#&!r't$!: 4.L umaA A M C ?.!: nicio '.monografias.L !eer A & B 6.FiNipedia.!a'.L =in. A%9#'('( *e# r!"#e$a: Entrada/ A & B representan los dos números.ste tipo de problemas# se emplea una serie de acciones ejecutadas repetidamente en un solo orden secuencial. E3EM1LO: De)'%'c'/% *e# 1r!"#e$a: Elaborar un algoritmo para calcular la suma de dos números & representar el algoritmo gr"ficamente.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS Secue%c'a#e(/ Para dar solución a .ltado es: S. D'a&ra$a *e )#u.L %mprime )“El resultado es/ 5uma* K.com>trabajosQB>diagramaLflujoLdatos>diagramaLflujoLdatos3. C!%*'c'!%a#e(/ Para dar solución a .org>FiNi>-iagramaOdeOflujoP$entajasOdeOlosOdiagramaOdeOflujo http/>>FFF.ste tipo de problemas# se emplean acciones en las que la ejecución de alguna depender" que se cumplan una o varias condiciones C6c#'ca(/ 5on aquellas que para dar una solución# es necesario utili(ar el mismo conjunto de acciones que puedan ejecutarse m"s de una ve(.n las siguientes direcciones/ http/>>es.

Ventajas de utilizar un Pseudocódigo a un Diagrama de Flujo 4. El pseudocódigo es la me(cla de lenguaje de programación & español )o ingl. Ho ha& que confundirlo con un diagrama de flujo.s# o cualquier otro idioma* que se emplea# dentro de la programación estructurada# para reali(ar el diseño de un programa. 7ejora la claridad de la solución de un problema. ?. 5i se siguen las reglas de identación se puede observar claramente los niveles en la estructura del programa. El pseudocódigo se refiere a crear un código para orientar a los programadores# pero sin la sinta+is ni la estructura propia de ningún lenguaje.cupan mucho menos espacio en el desarrollo del problema. . Es m"s sencilla la tarea de pasar de pseudocódigo a un lenguaje de programación formal. Pero no e+iste mucha bibliograf8a al respecto. En ve( de escribir el programa directamente en un lenguaje de programación determinado )2# Casic# etc.*# crearemos un borrador entendible para todos# para luego de tener bien en claro lo que se debe hacer# pasar a la programación propiamente dicha. Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: . En esencial# el Pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. 3. Permite representar de forma f"cil operaciones repetitivas complejas. En los procesos de aprendi(aje de los alumnos de programación# estos est"n m"s cerca del paso siguiente )codificación en un lenguaje determinado# que los que se inician en esto con la modalidad -iagramas de =lujo*. En el diagrama de flujo se representa el transcurso del programa# el momento donde se obtienen los datos# cuando se procesan & el momento de presentar los resultados.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS Lectura: 1SEUDOC2DIGO DEFINICI2N 7ucho se habla del pseudocódigo en las carreras de Analista de 5istemas & Programación. -igamos que el (eu*!c/*'&! es una forma de diagramar un algoritmo para resolver un determinado problema# sin atenerse a ningún lenguaje de programación en especial. 5i bien son dos herramientas que se utili(an en conjunto# cada una representa dos partes distintas en el diseño de un sistema. El Pseudocódigo utili(a palabras que indican el proceso a reali(ar. K. 6.

 Elegir una alternativa.L Emplea el programa 7icrosoft Uord 3BBV para elaborar los diagramas de flujo que se presentan en la actividad ?. Elabora un algoritmo para preparar un s"ndFich. Elabora un algoritmo para obtener el "rea de un tri"ngulo.L <rabaja colaborativamente en parejas & resuelve el problema planteado en la situación did"ctica/ “Enlistar las actividades necesarias a trav. Elabora el algoritmo para convertir una cantidad de pesos a dólares.L 2on la finalidad de practicar & tener los conocimientos para elaborar el algoritmo & diagrama de flujo para planear el viaje# trabaja colaborativamente en parejas para elaborar los siguientes ejercicios/     Elabora un algoritmo para cambiar una llanta ponchada de carro.! ! (e%c'##!?< • Elabora un documento que contenga el algoritmo & diagrama de flujo# con introducción# desarrollo & conclusión en el programa 7icrosoft Uord 3BBV. 3.L Reali(a una lectura de los temas “RSu. Q. e( *ec'r *e #u. 6.BLOQUE I: DISEÑA Y ELABORA ALGORITMOS 'C$ V D'D%S 4. • Elabora un reporte en el cuaderno de apuntes de las soluciones planteadas.  Evaluar la solución )el algoritmo*. *e e%*'e%*! *e #a ! c'/% *e tra%( !rte. es un algoritmo@ # “-iagramas de flujo # “Pseudocódigo # & elabora un resumen en el cuaderno de apuntes. ¿Cu9%t! (e *e"e a&ar ara a('(t'r. t!$a%*! e% cue%ta e# c!(t! a a&ar. K. porcentaje de mujeres ha& en su grupo. El maestro de inform"tica %% desea saber qu.L <rabaja colaborativamente en equipo de tres integrantes para revisar el siguiente ejemplo que viene en diagramas de flujo )Pag. Q* & reali(ar en el cuaderno de apuntes los diagramas de flujo de los algoritmos que se elaboraron en las actividades 3 & 6. porcentaje de hombres & qu.  -esarrollar la solución )el algoritmo*.L <rabaja en equipo de tres integrantes para elaborar en el cuaderno de apuntes el algoritmo que de solución a los siguientes problemas/  0n alumno desea saber cu"l ser" su calificación final en la asignatura de %nform"tica %%. Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .  Plantear alternativas de solución. *e e%*'e%*! *e# t' ! *e tra%( !rte0 ?. • E+pongan al grupo la solución planteada# con ideas claras & la tem"tica bien organi(ada. Resuelve los ejercicios aplicando la metodolog8a para llegar a una mejor solución de los problemas/  %dentificar el problema a resolver.s de un algoritmo & un diagrama de flujo para planear el viaje.  • Elabora e# a#&!r't$! ara #a%ear e# 8'a.e a# +!!#/&'c! *e Sa% D'e&!. -icha calificación se compone de tres calificaciones parciales con valor de EBT & un e+amen semestral con valor de 3BT.

BLOQUE I: DISEÑA Y ELABORA ALGORITMOS Profesor: José David Ortiz Salas Maribel Villareal Sánchez 1 Profesora: .