Introdción Algoritmo

21
Ihr Logo INTRODUCCIÓN A LOS ALGORITMOS Facultad de Educación – Funlam Tecnología e Informática – Amalia Dávila Gómez Objetivo: Familiarizar al estudiante con los conceptos básicos de Algoritmos para iniciar en el análisis y programación de computadores .

description

Este documento contiene, los conceptos básicos de algoritmo.

Transcript of Introdción Algoritmo

Page 1: Introdción Algoritmo

Ihr Logo

INTRODUCCIÓN A LOSALGORITMOS

Facultad de Educación – FunlamTecnología e Informática – Amalia Dávila Gómez

Objetivo: Familiarizar al estudiante con los conceptos básicos de Algoritmos para iniciar en el análisis y programación de computadores .

Page 2: Introdción Algoritmo

Your LogoHere comes your footer Page 2Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿Qué es un Algoritmo?

Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones de un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito. [Donald E. Knuth, 1968]

Descripción de un esquema de comportamiento expresado mediante un reportorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomina léxico [Pierre Scholl, 1988]

Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado. [Rodolfo Quispe-Otazu, 2004]

Page 3: Introdción Algoritmo

Your LogoHere comes your footer Page 3Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Rol de un Algoritmo

Un computador necesita ser

programado para poder funcionar. Aquí es donde el algoritmo juega un importante

papel.

Page 4: Introdción Algoritmo

Your LogoHere comes your footer Page 4Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Un Algoritmo es..

Una serie de pasos lógicos

para dar solución a un

problema.

Inicio

Fin

Paso 1Paso 2

.

.

.Paso n

Page 5: Introdción Algoritmo

Your LogoHere comes your footer Page 5Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿CUÁLES SON LAS CARACTERÍSTICAS DE UN ALGORITMO?

Ser Definido

Ser Finito

Tener cero o más entradas

Tener una o más salidas

Efectividad

Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar.

La serie de pasos lógicos, debe tener un fin.

Los datos que alimentan el proceso

Los datos resultado de un proceso

Tiempo y esfuerzo debe ser preciso y evitar coste computacional.

Page 6: Introdción Algoritmo

Your LogoHere comes your footer Page 6Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿QUÉ ES UN SISTEMA?

Sistema: Un sistema es un conjunto de partes o elementos organizadas y relacionadas que interactúan entre sí para lograr un objetivo. Los sistemas reciben (entrada) datos, energía o materia del ambiente y proveen (salida) información, energía o materia.

Un sistema puede ser físico o concreto (una computadora, un televisor, un humano) o puede ser abstracto o conceptual (un software)

Cada sistema existe dentro de otro más grande, por lo tanto un sistema puede estar formado por subsistemas y partes, y a la vez puede ser parte de un súper sistema.

Page 7: Introdción Algoritmo

Your LogoHere comes your footer Page 7Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿QUÉ ES UN SISTEMA?

Page 8: Introdción Algoritmo

Your LogoHere comes your footer Page 8Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿CUÁLES SON LOS USUARIOS DE UN SISTEMA?

Usuario Final: Persona que ve y utiliza los datos a modo de información.

Desarrollador de Aplicaciones: es la persona que desarrolla los

Programas.

DBA: Es el Administrador de Base de Datos, encargado de garantizar la integridad, consistencia, redundancia y la seguridad (realizar mantenimiento a la bases de datos)

Page 9: Introdción Algoritmo

Your LogoHere comes your footer Page 9Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

USUARIOS ESPECIALIZADOS: son los que desarrollan aplicaciones avanzadas como sistemas expertos, reconocimientos de imágenes, procesamiento de señales, entre otros.

USUARIOS INGENUOS: interactúan con el sistema por medio de programas o aplicaciones

USUARIOS SOFISTICADOS: capaces de acceder a la información por medios de lenguajes de consulta.

PROGRAMADORES :con dominio del DML capaces de diseñar e implementar nuevos módulos y utilidades para actualizar las bases de datos.

Personas de un sistemas

Page 10: Introdción Algoritmo

Your LogoHere comes your footer Page 10Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Tipo de Algoritmos

Existen dos tipos

Son aquellos en los que se

describen los pasos utilizando

palabras

Son aquellos en los que se

utilizan cálculos numéricos para definir los pasos

del proceso

Cualitativos Cuantitativos

Page 11: Introdción Algoritmo

Your LogoHere comes your footer Page 11Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Ejemplo de Algoritmos

CualitativosCuantitativos

Inicio 1.Comprar los Ingredientes 2. Poner agua necesaria a hervir 3. Agregar sal y aceite 4. Medir y Lavar arroz 5. Agregar arroz al agua 6. Verificar que el fuego sea lento 7. Esperar a que esté listoFin

Inicio var N entero Lea N si N mod 2 <> 0 entonces “Par” si no “Impar”Fin

Preparar un arroz tradicional

Saber si un número es par o impar

Page 12: Introdción Algoritmo

Your LogoHere comes your footer Page 12Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Lenguaje de Algoritmos

serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.

Diagrama de Flujo

PseudocódigoDiagramas de

Nassi-schneiderman

INICIO    Edad: Entero      Lea Edad     SI Edad <18 entonces       Imprima “Es menor de Edad”     FINSI FIN

INICIO

FIN

Lea Edad

Edad <18

Page 13: Introdción Algoritmo

Your LogoHere comes your footer Page 13Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Metodología para la solución de problemas por medio de computadora

Page 14: Introdción Algoritmo

Your LogoHere comes your footer Page 14Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

DEFINICIÓN

Es la etapa donde se parte del enunciado del problema. Este necesita estar bien definido (claro y preciso). Se debe tener conocimiento del problema a solucionar, es decir que se debe conocer lo que debe hacer la computadora; si esto no se conoce, o se tienen dudas, no se debe continuar con la siguiente etapa.

Page 15: Introdción Algoritmo

Your LogoHere comes your footer Page 15Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

ANÁLISIS

En esta etapa se debe identificar y definir:

Los datos de entrada (información que se debe ingresar - Alimentar)Los datos de salida (información que se desea producir) Los métodos y fórmulas que se necesitan para procesar los datos.

Es hacer el ejercicio de ponerse en el lugar del pc y analizar qué es cuáles son los pasos (órdenes) y en qué secuencia se deben ejecutar para obtener los resultados esperados.

Page 16: Introdción Algoritmo

Your LogoHere comes your footer Page 16Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

DISEÑO

En esta etapa se escribe el algoritmo en una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso. Se puede usar:

Diagrama de FlujoDiagramas de Nassi-schneidermanPseudocódigo

Page 17: Introdción Algoritmo

Your LogoHere comes your footer Page 17Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

¿QUÉ ES UNA PRUEBA DE ESCRITORIO?(Test Desk)

Es la forma de comprobar cada paso que hace un algoritmo para saber si las instrucciones son correctas, para saber si las variables están tomando los resultados esperados y para saber si los pasos están siguiendo un orden lógico.

Esta prueba consiste en tomar cada variable involucrada en el algoritmo y hacer un seguimiento a los valores que toman desde el inicio hasta el fin.

El análisis de estos resultados sirve para saber si el algoritmo está bueno o si es necesario corregirlo o hacerle cambios.

Page 18: Introdción Algoritmo

Your LogoHere comes your footer Page 18Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

EJEMPLO: PRUEBA DE ESCRITORIO

Inicio var N entero Lea N si N mod 2 <> 0 entonces “N Par” si no “N Impar”Fin

Algoritmo Prueba

Pasos Memoria Pantalla1 N=0 Nada

2 N=5 (el usuario lo ingresa) Nada

3 5/2 (Sobra 1) “Impar”

Page 19: Introdción Algoritmo

Your LogoHere comes your footer Page 19Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

REFERENCIAS

Ricardo Baeza Yates. Computación: de los Juegos a los Algoritmos, y de la Teoría a la Práctica. Mayo 2003

Ricardo Baeza Yates. Algoritmia. Mayo 1995

Eduardo René Rodríguez Ávila. El Correcto y Completo Desarrollo de un Algoritmo. Mayo 2004

Wikipedia. Algoritmo. Wikipedia. Junio 2010

Page 20: Introdción Algoritmo

Your LogoHere comes your footer Page 20Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

ACTIVIDAD DE APRENDIZAJE

Responda Falso o Verdadero según el caso

DefiniciónEs la etapa donde se parte del enunciado del problema. Este necesita estar bien definido (claro y preciso)

AnálisisEn esta etapa se analiza el ejercicio por medio de una prueba de escritorio parasaber si están correctas las instrucciones.

DiseñoEs la etapa donde se identifican las variablesDe entrada, de salida y los procedimientos,Métodos y fórmulas.

Falso Verdadero

Falso Verdadero

Falso Verdadero

Page 21: Introdción Algoritmo

Your LogoHere comes your footer Page 21Facultad de Educación – Funlam

Tecnología e Informática – Amalia Dávila Gómez

Seleccione la opción correcta:

¿CUÁL ES EL ORDEN CORRECTO PARA LA SOLUCIÓN DE UN ALGORITMO?

Definición, Análisis y Diseño

Definición, Diseño, Análisis

Análisis, Definición, Prueba de Escritorio

Definición de Variables, Prueba de escritorio y Diseño