Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una...

29

Transcript of Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una...

Page 1: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.
Page 2: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo es resolver un problema.

Page 3: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

• Las características fundamentales que debe cumplir todo algoritmo son:

• Definido: Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación.

• Finito: tiene fin, no importando el numero de instrucciones .

• Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende.

Page 4: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo.

Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución.

Page 5: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Existen dos tipos y son llamados así por su naturaleza:

Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras. Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.

Page 6: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

ENTRADA.

PROCESO.

SALIDA.

DATOS A INTRODUCIR PARA POSTERIORMENTE PROCESARLOS

PROCESO DE LOS DATOS INTRODUCIDOS.

RESULTADO DE LOS DATOS PROCESADOS.

Page 7: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Algoritmo para vestirse

Entrada proceso Salida

Lenguaje natural1.buscar la ropa2.escoger la ropa3.ponerse la ropa4.estar lista para salir

Page 8: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Entrada proceso SalidaIngresar el Primer Número.Ingresar el Segundo Número.Ejemplo:Numero1=5Numero2=3

-Sumar el primer numero más el Segundo.

Ejemplo:Resultado=Numero1+Numero2

-Mostrar el resultado de la suma.

8

Lenguaje natural1.Ingresar el Primer Número.2.Ingresar el Segundo Número.3.Sumar el Primer Número más el Segundo.4.Mostrar el resultado de la suma.

Algoritmo para calcular la suma de dos Números.

Page 9: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Entrada proceso SalidaAño de Nacimiento -Resta de año actual menos el

año de nacimiento.-Verificar si el valor de la edad es mayor ó igual a 18 ó menor ó igual que 17

-Edad-Mensaje diciendo si es menor ó mayor de edad según el resultado de la edad.

Lenguaje natural1.Ingresar el año de nacimiento.2.Restar Año de nacimiento menos el año actual, para calcular la edad.3.Verificar si el resultado de la edad es mayor ó igual que 18 ó menor ó igual que 17.4.Mostrar la edad y mostrar el mensaje diciendo si es menor ó mayor de edad

Algoritmo para calcular la edad de una persona y verificar si es menor ó mayor de edad, con tan solo ingresar el año de nacimiento.

Page 10: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Un Lenguaje algorítmico es una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.

No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocódigo).

Page 11: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Diagrama de Flujo

Un diagrama de Flujo es la representación gráfica de un algoritmo

Page 12: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Ejemplo de Diagrama de Flujo que suma dos números enteros.

Page 13: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Otro ejemplo de Diagrama de Flujo que suma dos números con su respectivo Pseudocódigo

Page 14: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

El pseudocódigo es un forma de representar un algoritmo, mediante sentencias similares al lenguaje natural, pero con una precisión mayor.

Page 15: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

El pseudocódigo está pensado para facilitar a las personas el entendimiento de un algoritmo, y por lo tanto puede omitir detalles irrelevantes que son necesarios en una implementación. Programadores diferentes suelen utilizar convenciones distintas, que pueden estar basadas en la sintaxis de lenguajes de programación concretos. Sin embargo, el pseudocódigo, en general, es comprensible sin necesidad de conocer o utilizar un entorno de programación específico, y es a la vez suficientemente estructurado para que su implementación se pueda hacer directamente a partir de él.

Así el pseudocódigo cumple con las funciones antes mencionadas para representar algo abstracto los protocolos son los lenguajes para la programación. Busque fuentes más precisas para tener mayor comprensión del tema.

Page 16: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Ejemplo de Pseudocódigo que suma dos números enteros.

Page 17: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

3. Análisis

INICIO Edad: Entero ESCRIBA “¿cual es tu edad?” Lea Edad SI Edad >=18 entonces ESCRIBA “Eres mayor de Edad” FINSI ESCRIBA “fin del algoritmo” FIN

2. Captura de Datos

1. Declaración Variables

4. Salida de Datos

Page 18: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

¿Qué es programación?:

Es el proceso de diseñar, codificar, depurar y mantener el código fuente (instrucciones con procedimientos lógicos) de programas computacionales los cuales están formados por algoritmos estructurados.

¿Qué utilizo para crear un programa de computadora?1.Lenguaje de Programación.2.Un IDE (Entorno de Desarrollo integrado)?

¿Qué es un lenguajes de programación y cuales hay?Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadorasJava, javascript, pascal, c#, c++, PHP, HTML, Basic, Objetive C, Python, Perl, Object Pascal, etc.

¿Qué es un IDE?Es un entorno de desarrollo integrado que contiene un compilador ó interprete (traductor del lenguaje de programación) y un sinfín de herramientas para el desarrollo de programas.

¿Qué IDEs existen para empezar a programar?Turto Pascal, FreePasca, Visual Strudio, Delphi, Lazarus, Eclipse, Netbeans, etc.

Page 19: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Ejemplo de Código Fuente.

Page 20: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Lenguaje Máquina.

Lenguaje Ensamblador. Lenguaje Binario, es el unico que lee el hardware de la PC.

Page 21: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

TAREA.

Realice ya sea a mano ó a computadora un mapa conceptual sobre el tema de la presentación

Page 22: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

POO (PROGRAMACIÓN ORIENTADA A OBJETOS)

Es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones y programas de computadoras, este se basa en crear un concepto llamado “clase “, dicho concepto crea otro llamado objeto.

Está basado en varias técnicas:Herencia, Abstracción, Polimorfismo, Acoplamiento y encapsulamiento.

Se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.

Algunos lenguajes orientados a objetos: object pasca, objetive C, c++, C#, java, perl, python, php, .Net (de Microsoft incluye VB.NET C.NET, etc) , Ruby, etc.

Page 23: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

POE (Programación Orientada a Eventos)

La programación dirigida por eventos es un paradigma de programación en el que tanto la estructura como la ejecución de los programas van determinados por los sucesos que ocurran en el sistema, definidos por el usuario o que ellos mismos provoquen, tales eventos pueden ser:

Al hacer clic en determinado punto ó objeto de la pantalla,Al ejecutarse el programa,Al hacer Doble Clic,Al pasar el puntero de mouse sobre una parte de la pantallaAl escribir en un cuadro de texto, etc

Entre los lenguajes y IDES que implementan eventos son:

MS Visual Basic(Basic),MS Visual Fox Pro(Foxpro),Delphi (Object Pascal), etc.

Page 24: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Programación ModularLa programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable.

Page 25: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Programación descendente ("Top - Down")

La programación descendente o "Top - Down" es el proceso mediante el cual un problema se descompone en una serie de niveles o pasos sucesivos de refinamiento (stepwise). Este tipo de metodología divide un proceso en subprocesos ó subniveles.

Page 26: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Programación por procedimientos

Es un paradigma de la programación. Muchas veces es aplicable tanto en lenguajes de programación de bajo nivel como en lenguajes de alto nivel. En el caso de que esta técnica se aplique en lenguajes de alto nivel, recibirá el nombre de Programación funcional.

-Función

Function Triangulo(var altura:integer, base:integer)begin var altura:integer; base: integer; readln(altura); readln(base); writeln((altura*base)/2);end;

Triangulo(5,3);

-Procedimiento

Procedure Triangulo ()begin var altura:integer; base: integer; readln(altura); readln(base); writeln(altura*base);end.

Triangulo()

Page 27: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

Variable y Constante

Dato: es una representación simbólica (numera, alfabética, booleano, algorítmica, etc.)

Constante:

Page 28: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

DFD

Dfd es un software diseñado para construir y analizar algoritmos, para representarlos en forma de diagrama de flujo .

Page 29: Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas, el objetivo principal de un algoritmo.

http://es.wikipedia.org/wiki/Algoritmo

http://www.monografias.com/trabajos15/algoritmos/algoritmos.shtml

http://luda.uam.mx/curso1/Introduccion%20a%20la%20Programacion/algoritmo.htm