Vous êtes sur la page 1sur 14

ALGORITMOS

( Habilidad para pensar algortmicamente ) ( Expresar la solucin en forma algortmica ) ( ALGORITMOS = secuencia, seleccin, repeticin y salto ) ( ALGORITMOS = acciones lgicamente ordenadas )

I.- CREAR ALGORITMOS

II.- ENTENDER ALGORITMOS

III.- ANALIZAR ALGORITMOS

IV.- IMPLEMENTAR ALGORITMOS V.- MODIFICAR ALGORITMOS

Solucin de Problemas Abstraccin Creativa Tcnicas Algortmicas Solucin Algortmica

Pensamiento Profundo Deduccin Lgica Diseador de Algoritmos Expresar la solucin en forma algortmica

Habilidades algortmicas de resolucin de problemas Algoritmos: la base de las habilidades de programacin Algoritmo: Solucin a un problema Algoritmos: secuencia, seleccin repeticin y salto Programacin: Pensamiento algortmico en forma tangible Algoritmo: 1.- Obtenga los datos 2.- Realice los clculos 3.- Muestre los resultados Habilidad para pensar algortmicamente Desarrollo de Algoritmos Algoritmos: soluciones abstractas

Algoritmo: describe qu hacer en todas las situaciones posibles Algoritmos: Crear algoritmos Entender algoritmos Analizar algoritmos Implementar algoritmos Algoritmo: Establece qu va a ser calculado y cmo va a ser calculado

Algoritmo: Es un proceso de resolucin de problemas paso por paso

Algoritmo: Dar las instrucciones y seguir las instrucciones

Algoritmo: Cual es el conjunto de instrucciones que, cuando se siguen transformar las entradas del problema en la salida deseada. ABSTRACCIN: Ver un problema y su solucin en muchos niveles de detalle ALGORITMO: Introduzca los datos de entrada Entonces procese los datos de entrada

Algoritmo: El camino lgico que se elige para lograr el objetivo deseado GENERALIZACIN: Darse cuenta que una solucin a un problema puede ser usada para resolver un gran rango de problemas relacionados

Y luego entonces muestre, imprima o almacene los datos de salida ALGORITMO: Es un mtodo general Las instrucciones de clculos en un algoritmo deben establecer ambos: lo que es calculado y cmo es calculado Crear ALGORITMOS bien estructurados que logren la tarea deseada bajo todas las condiciones

ALGORITMO: Describe el flujo de datos y el flujo de control

HABILIDADES DE RESOLUCIN DE PROBLEMAS

Qu es un algoritmo? Qu es el pensamiento algortmico? Cmo son comunicados los algoritmos? Porqu son importantes los algoritmos?

Cules son las propiedades importantes que debe tener un algoritmo? Cmo se crean los algoritmos?

ALGORITMO: Un algoritmo es un procedimiento paso por paso el cual, comienza con una entrada dada, y
produce una salida adecuada.

ALGORITMO: Un algoritmo es un preciso, mtodo sistemtico para producir un resultado especificado. ALGORITMO:
Un algoritmo es un conjunto de instrucciones bien definidas utilizados para completar una tarea.

ALGORITMO: Es un mtodo para resolver un problema que consiste de instrucciones exactamente definidas. ALGORITMO:
Es un mtodo sistemtico el cual debe de responder a una pregunta, para todos los casos posibles del problema, despus de un nmero finito de pasos.

ALGORITMO: Es un conjunto de instrucciones paso por paso que realizan una tarea. ALGORITMO: Es un conjunto de pasos que describen cmo una tarea es lograda. ALGORITMO: Es un plan para cmo lograr una tarea. ALGORITMO: Es un mtodo general ALGORITMO: Algoritmo es un conjunto ordenado y finito de pasos que especifican la secuencia de operaciones
que se han de realizar para resolver un problema.

Definition of an algorithm

an ordered sequence of well-defined and effective operations which, when executed, will terminate in a finite amount of time and produce correct result

Properties of good algorithms

1. Precision each step must be clear and unambiguous in its meaning the order of execution of the steps must be clear the number of steps must be finite each step must itself be finite

2. Simplicity each step must be simple enough that it can be easily understood each step should translate into only a few (or one) computer operation or instruction

3. Levels of abstraction the steps in the algorithm should be grouped into related modules or blocks you may use one module inside another module you may refer to other algorithms by name instead of including all of their steps in the current algorithm

VARIABLES
Para poder utilizar algoritmos con diferentes conjuntos de datos iniciales, se debe establecer una independencia clara entre los datos iniciales de un problema y la estructura de su solucin. Esto se logra mediante la utilizacin de

Variables ( cantidades que se suelen denotar con letras-identificadores y que pueden tomar cualquier valor de un intervalo de valores posibles ). En programacin, las Variables son espacios de trabajo ( contenedores ) reservados para guardar datos ( valores ). El valor de una Variable puede cambiar en algn paso del Algoritmo o permanecer invariable; por lo tanto, el valor que contiene una variable es el del ltimo dato asignado a esta.

PROBLEMA COMPUTACIONAL: Es una sentencia la cual incluye especificaciones que requieren una solucin
en forma algortmica.

CDIGO: Es una implementacin de un algoritmo que puede ser ejecutado por una computadora.

PROGRAMA: Es un algoritmo expresado en un lenguaje de programacin especfico bajo un especfico conjunto


de circunstancias.

PROGRAMA: Un programa es un algoritmo que ha sido personalizado para resolver una tarea especfica bajo un
conjunto de circunstancias en un lenguaje especfico.

INTRODUCCIN
Nosotros encontramos algoritmos como recetas, instrucciones de armado, direcciones para conducir, procesos de negocio.

PODEMOS DESCIFRAR MUCHOS ALGORITMOS PROPIOS, ABSTRAYNDOLOS DE CASOS ESPECFICOS

5 PROPIEDADES DE LOS ALGORITMOS


1) ESPECIFICAR LA ENTRADA: Se debe especificar el tipo, monto, y forma de los datos a ser usados
durante el algoritmo.

2) ESPECIFICAR LA SALIDA: Se debe describir el resultado del algoritmo ( es posible que no tenga salida). 3) PRECISIN: Especificar precisamente y adecuadamente la secuencia de pasos que van a ser llevados a 4) 5) FINITO: El algoritmo debe eventualmente parar ( terminar ).
cabo por el algoritmo, incluyendo el manejo de errores. OPERACIONES RAZONABLES: Las operaciones son ejecutables.

SIN AMBIGEDAD: Las instrucciones slo pueden ser interpretadas de una forma nica. EJECUTABLE: La persona o dispositivo que ejecute la instruccin debe saber cmo llevar a cabo la instruccin sin ninguna informacin extra. ORDENADO: Los pasos de un algoritmo debe estar ordenados en una secuencia apropiada para que correctamente logre la tarea. GENERAL: Esto significa que debe resolver todos los casos particulares del problema.

1.- CADA PASO DEL ALGORITMO DEBE SER EXACTO 2.- UN ALGORITMO DEBE TERMINAR 3.- UN ALGORITMO DEBE SER EFECTIVO
Debe proporcionar la respuesta correcta al problema

4.- UN ALGORITMO DEBE SER GENERAL


Esto significa que debe resolver cada instancia del problema

PROBLEMAS CONCRETOS Y PROBLEMAS ABSTRACTOS

PENSAMIENTO ALGORTMICO VS. PENSAMIENTO COMPUTACIONAL


El pensamiento algortmico es necesario para construir herramientas, mientras que el pensamiento computacional es necesario para usar herramientas.

PENSAMIENTO ALGORTMICO ( ALGORITHMIC THINKING )

Pensar algortmicamente es pensar en pasos, no en grandes pasos. Es la habilidad de entender, ejecutar, evaluar, y crear algoritmos La habilidad de desarrollar una estrategia paso por paso para resolver un problema Es pensar acerca de cmo lograr un fin particular El pensamiento algortmico es de alguna manera un conjunto de habilidades que estn entrelazadas y que nos ayudarn a construir y entender los algoritmos.

La habilidad de analizar los problemas dados. La habilidad de especificar un problema precisa y adecuadamente. La habilidad de descomponer problemas complejos en pequeos problemas y especificar exactamente como resolver estos pequeos problemas La habilidad de encontrar las acciones bsicas que son adecuadas para los problemas dados. La habilidad para construir un algoritmo correctamente usando las acciones bsicas encontradas. La habilidad de pensar en todos los posibles casos normales y especiales que el problema presenta. La habilidad para mejorar la eficiencia del algoritmo.

INTRODUCCIN
Problema Algortmico y el algoritmo que lo resuelve MODELOS PRELIMINARES DE ALGORITMOS Los Algoritmos pueden ser expresados en varios formatos que son independientes de un lenguaje de programacin o dispositivo particular de hardware. Las dos formas tradicionales de expresar los algoritmos son usar seudocdigo y diagramas de flujo de datos. Un algoritmo debe ser escrito usando un lenguaje entendido por ambos, el escritor del algoritmo y el lector quien lo usar.

El PROBLEMA COMPUTACIONAL O ALGORTMICO Y SU SOLUCIN

DISEO DE ALGORITMOS

INTRODUCCIN
Cuando quiera crear un algoritmo para una tarea usted bsicamente quiere tener en cuenta la serie de acciones lgicamente ordenadas y las condiciones que definen cmo desempear la tarea. UNO DEFINA CLARAMENTE LA TAREA Si usted va a crear un algoritmo debe de tener un claro entendimiento de qu es lo que tiene que definir. As que la mejor cosa que tiene que hacer en esta primera etapa es anotar qu elementos son afectados por esta tarea y qu reas cubre esta tarea. DOS DEFINA QU ACCIONES ESTN INVOLUCRADAS EN LA TAREA Repase su lista de acciones en su cabeza y anote cada accin que usted piensa est asociada con la tarea a realizar. Trate de ser explcito con todos los pasos que puedan ser requeridos para la tarea. TRES DEFINA EL ORDEN DE ESTAS ACCIONES Vuelva a repasar su lista de acciones y vea qu acciones tienen que ser hechas antes de cada accin y antelas cuidadosamente. CUATRO CONVIERTA ESTO EN UN ALGORITMO Ahora tome sta lista y construya una lista ordenada empezando con la primera accin y construya sobre esta accin base las acciones que tienen que ser hechas primero. Mientras ms claras, simples y sin ambigedad sean las acciones, mejor ser el algoritmo. CINCO SON LAS ACCIONES CLARAS? Es siempre bueno hacerse esta pregunta: Qu conocimiento necesito para entender esto? y La audiencia tiene este conocimiento?. Esto es porque muy a menudo escribimos las instrucciones como si fueran escritas a alguien ms que tiene el mismo conocimiento bsico y entendimiento de conceptos como para los cuales nosotros entendemos claramente. Por ese motivo podemos estar tentados a escribir malos algoritmos. SEIS PRUEBE SU ALGORITMO Ahora cree un ejemplo concreto y prubelo en el algoritmo creado. SIETE IDENTIFIQUE ACCIONES PERDIDAS Y REESCRIBA EL ALGORITMO Esto es importante, en muchos casos la primera versin del algoritmo se omitir algo que puede ser muy obvio para usted, pero no puede ser obvio para alguien ms. OCHO SI SE HAN HECHO TODAS LA CORRECCIONES, REGRESE AL PUNTO 5 Corregir y checar hasta que ya no haya ms correcciones es una forma muy til para escribir algoritmos. Esto se debe a que le permite quitar cualquier error que se presente, y estar seguro de que su versin final del algoritmo trabaja de la mejor forma posible. Esto es conocido como desarrollo iterativo.

MODIFICACIN DE ALGORITMOS
La modificacin de algoritmos implica 5 procesos: 1.- GENERALIZACIN: Es el procesos de hacer que apliquen a ms casos.

2.- EXTENDERLOS: Para que incluyan ms casos especficos. 3.- VALIDACION DE ENTRADAS