5. Fundamentos de algoritmos

Slides:



Advertisements
Presentaciones similares
Presentado por: Yuli Dominguez. Portal Educa Panamá. Sistema de numeración.
Advertisements

Introducción al cálculo lambda Programación lógica funcional.
Programación II Sesión 3. TABLA DE CONTENIDO  Tipos de Datos en C  Delimitadores  Tipo Char  Tipo Int  Tipo Float  Tipo Double  Constantes  Operadores.
ALGORITMO Es un conjunto concreto de pasos, procedimientos o acciones que se realizan ordenadamente para alcanzar un objeto o resolver un problema.
¿Qué es un Diagrama de Flujo? UN DIAGRAMA DE FLUJO, TAMBIÉN LLAMADO FLUJOGRAMA DE PROCESOS O DIAGRAMA DE PROCESOS, REPRESENTA LA SECUENCIA O LOS PASOS.
TUTORIA 1 Lógica para la Computación TUTORIA 1 Facultad de Ciencias Naturales y Matemáticas.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Números enteros y Racionales
Ingreso , proceso y salida de datos
Estandares para numeros y algebra
Potenciación Bibliografía: el mentor de matemática Grupo Océano
L. S. C. A. Raúl Monforte Chulin
DE PRIMERO Y SEGUNDO GRADO Diseño: M. en C. Juan Adolfo Alvarez Mtz.
Números reales.
Repaso Programacion en C
UNIDAD 1 CONCEPTOS BÁSICOS
NÚMEROS ENTEROS Símbolo:.
ESTRUCTURAS CONDICIONALES
Funciones Potencias, exponenciales y logarítmicas.
El conjunto de los números naturales
Fundamentos de la Computación
INFORMÁTICA II (METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS)
Diagramas de Flujo Algoritmos.
Por; María Del C. Vélez Math. 4-6
Tema 4 Elementos para el Desarrollo de Algoritmos
Lenguajes y representación técnica
ALGORITMOS Por Carolina R.
Tema 2. Resolución de Problemas
TUTORIAL PSeint.
CREAR DIAGRAMA DE FLUJO
Algoritmo Conjunto ordenado y finito de pasos que permite hallar la solución de un problema. Una secuencia de pasos que conducen a la realización de una.
DESCOMPOSICIÓN FACTORIAL ALGEBRA LINEAL Ingeniería en Mecatrónica EQUIPO #2 Sánchez Ortega Luis Fernando Barrón Calvillo Roger Antonio Ornelas Mejia David.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
LÓGICA DE PROGRAMACIÓN
Diagrama de flujo y algoritmo
ALGORITMOS es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos.
Índice temático 2.1 Análisis de problemas. 2.2 Representación de algoritmos: gráfica y pseudocódigo. 2.3 Diseño de algoritmos aplicados a problemas 2.4.
Funciones Prof. M. Alonso
Algoritmo Capitulo Cinco.
AUTOMATAS FINITOS DETERMINISTICOS
UNIDAD 1 APROXIMACIÓN NUMÉRICA Y ERRORES  Aproximación numérica y problema de caja negra.  Sistema numérico de punto flotante.  Error de redondeo. 
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
PROGRAMACION: Que es un computador: Es un aparato electrónico que tiene el fin de recibir y procesar datos para realización de diversas operaciones..
Diagrama de Flujo La presentación gráfica de sistemas es una forma ampliamente utilizada como herramienta de análisis, ya que permite identificar aspectos.
Expresiones Algebraicas
HERRAMIENTAS DE PROGRAMACIÓN
CONJUNTO DE NÚMEROS ENTEROS Símbolo: Profesora: Silvina Acquaviva.
1 Expresiones Algebraicas Una expresión algebraica es una expresión en la que se relacionan valores indeterminados con constantes y cifras, todas ellas.
ÁLGEBRA. DEFINICIÓN DE ÁLGEBRA El Álgebra es una rama de las matemáticas que emplea números, letras y signos para hacer referencia a las distintas operaciones.
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
INFORMÁTICA II (PSEUDOCODIGO Y METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS) Ing. José David Ortiz Salas.
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
Teoría Nº 3 Conceptos Básicos de Algoritmia Estructuras de Control
CURSO LOGICA DE SISTEMAS. Lógica Es una ciencia formal que estudia los principios de la demostración e inferencia válida. Una inferencia es una evaluación.
INTRODUCCIÓN A LA PROGRAMACIÓN ABRAHAM SOPLA MASLUCÁN MAESTRO EN CIENCIAS DE LA COMPUTACIÓN INSTITUTO TECNOLÓGICO DE MONTERREY.
Diego Hernández R Algoritmos Diego Hernández R
Diego Hernández R Algoritmos Diego Hernández R
CONJUNTO DE NÚMEROS ENTEROS Símbolo: Profesora: Silvina Acquaviva.
Aritmetica.  es la rama de la matemática cuyo objeto de estudio son los números y las operaciones elementales hechas con ellos: adición, sustracción,
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
Fundamentos de la Programación I
AUTÓMATAS ROHERMY OCHOA V AUTÓMATA FINITO Es un modelo computacional que realiza cómputos en forma automática sobre una entrada para producir.
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
1 Radicales Definición del concepto Vocabulario Propiedades de los radicales Simplificar expresiones con radicales Operaciones con radicales Resolver ecuaciones.
INTRODUCCIÓN A LA INFORMÁTICA
Contenidos Potencias. Propiedades de las Potencias. Raíz y raíz cuadrada. Propiedades de las raíces. Orden en las operatorias (PAPOMUDAS)
CONJUNTO DE NÚMEROS ENTEROS Símbolo:.
NÚMEROS REALES. NÚMEROS NATURALES Los números naturales son aquellos que sirven para designar la cantidad de elementos que posee un cierto conjunto. Se.
Diseñas y elaboras algoritmos para la solución de problemas
Transcripción de la presentación:

5. Fundamentos de algoritmos MI Elizabeth Fonseca Chávez 2010-2

Maquina de Turing matemático inglés Alan Turing

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

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

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.

Turing

Funcionamiento de Maquina de Turing

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.

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.

Tipos de datos Enteros: short, int, long y long long. 1-8 bytes int a; unsigned int a; signed long a; signed long a = 10000000; 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;

Diagramas de Flujo y seudocódigo Planteamiento de un problema.

Algoritmo estructurado Secuencia Selección Repeticion