Descargar la presentación
La descarga está en progreso. Por favor, espere
1
5. Fundamentos de algoritmos
MI Elizabeth Fonseca Chávez 2010-2
2
Maquina de Turing matemático inglés Alan Turing
3
Turing Definición de algoritmo: conjunto ordenado de operaciones que permite hallar la solución de un problema. La Máquina de Turing La máquina de Turing es una caja negra (tan simple como una máquina de escribir y tan compleja como un ser humano) capaz no sólo de leer y escribir un alfabeto de símbolos finito a partir de una cantidad finita pero muy grande de cinta de papel, sino de modificar su propia configuración o "estado mental". La máquina de Turing se convirtió en un instrumento ideal para probar si un procedimiento es efectivamente computable o no. Turing empleó su maquina y definió un algoritmo como cualquier conjunto de instrucciones para su máquina simple
4
TURING Funcionamiento
Una máquina de Turing es un dispositivo que transforma un INPUT en un OUTPUT después de algunos pasos. Consiste en una cabeza de lectura/escritura que examina una dimensión posiblemente infinita de una cinta bidireccional dividida en cuadros cada uno de los cuales está identificado con un 0 o un 1. Para llevar a cabo algún algoritmo, la máquina se inicializa en algún estado interno arbitrario. A continuación, se pone en marcha y la máquina lee el bit que se encuentra en ese momento en su interior y ejecuta alguna operación con ese bit (lo cambia o no, dependiendo de su estado interno). Después se mueve hacia la derecha o hacia la izquierda, y vuelve a procesar el siguiente bit de la misma manera. Al final se para, dejando el resultado al lado izquierdo
5
TURING Cualquier función que pueda ser considerada de "modo natural" como computable puede ser computada por una máquina universal de Turing. Si bien la conjetura no ha podido ser demostrada, hasta el momento ha resistido todos los intentos de encontrar un contraejemplo.
7
Turing
8
Funcionamiento de Maquina de Turing
9
Computabilidad Una de las cuestiones mas estudiadas en la teoría de la computabilidad ha sido la posibilidad de construir algoritmos que nos determinen si un determinado algoritmo posee o no una determinada propiedad. El identificar los problemas que son computables y los que no lo son tiene un considerable interés, pues indica el alcance y los límites de la computabilidad, y así demuestra los límites teóricos de los ordenadores.
10
Todas las operaciones aritméticas son algoritmos (sumar, multiplicar, raíces cuadradas, elevar a una potencia…). Todas consisten en realizar un pequeño número de instrucciones que se repetirán cuantas veces sean necesarias para llegar a una conclusión. Entonces, un algoritmo se podría definir como un conjunto de instrucciones para realizar una tarea con las siguientes características: 1) Precisión: un algoritmo ha de estar definido con suficiente precisión para no albergar dudas sobre qué paso seguir. 2) Simplicidad: las reglas son sencillas. Cuando se trata de algoritmo, en apariencia sencillo, se puede descomponer en algoritmos más elementales. El de Euclides, por ejemplo, se puede descomponer en divisiones y agrupamientos divisor-resto. 3) Finitud: el número de reglas ha de ser finito mientras que el número de operaciones que pueden realizarse debe ser infinito. 4) Carácter mecánico: es un procedimiento mecánico, automático. Un algoritmo no requiere ninguna agudeza mental ni ingenio creativo, es algo que cualquier persona puede hacer con sólo tener la capacidad de seguir y obedecer reglas. 5) Procedimiento general: los algoritmos están orientados a la solución de problemas, pero no tendría mucho sentido diseñar uno para solucionar un único problema particular (imaginemos crear un algoritmo para multiplicar 45 por 678 y nada más). Está en la naturaleza del algoritmo ser un mecanismo lo más sencillo y económico posible para realizar correctamente muchas tareas. Sin embargo, como la dificultad para realizar muchas tareas diferentes por un mismo algoritmo es mucha, se los suele utilizar para resolver un tipo de problemas. Así, el algoritmo de Euclides soluciona todos los casos posibles del problema de encontrar el máximo común divisor.
11
Tipos de datos Enteros: short, int, long y long long. 1-8 bytes int a; unsigned int a; signed long a; signed long a = ; Reales: float 4 bytes y el double 8 bytes Reales de 4 bytes, se utiliza 1 bit para el signo, 8 bits para el exponente y 23 bits para el valor del número. float b= 54.5; Caracteres: char 1 byte entero de 0 a 255 char a; char a = 's'; char a = 48;
12
Diagramas de Flujo y seudocódigo
Planteamiento de un problema.
13
Algoritmo estructurado
Secuencia Selección Repeticion
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.