• No se han encontrado resultados

01-algoritmos

N/A
N/A
Protected

Academic year: 2020

Share "01-algoritmos"

Copied!
79
0
0

Texto completo

(1)
(2)

Algoritmos

¿Que es un algoritmo?

“Una lista de instrucciones donde se especifica

una sucesión de operaciones necesarias para resolver cualquier problema de un tipo dado”.

(3)
(4)

Algoritmos

1. 5+1=6

2. Anotar 6

3. 2+9=11

4. Anotar 1 y guardar 1

5. 4+0=4

6. 4+1=5

Algoritmos

(5)

Algoritmos

Algoritmos

+

V V V

V F F

F V F

F F F

V

+ F

(6)

Algoritmos

(7)

Algoritmos

Entrada

¿Qué se necesita para realizar los pasos?

Salida

¿Que se obtiene al final del algoritmo?

Tipos de datos

Números: enteros, reales, complejosTexto: letras, palabras, frases

(8)

Algoritmos

Sirven para resolver un tipo de problema

especifico.

Son secuencias de pasos concretos.

Requiere la definición de la entrada y la salida.

Adecuados para ser ejecutados por un

(9)

Algoritmos

¿Qué tiene que ver con la programación?

La programación consiste en crear programas de

computador que resuelvan problemas específicos.

Un programa de computador es la

(10)

Algoritmos

¿Qué es un programa de computador?

Es una secuencia de pasos a ejecutar

Los pasos están descritos en un lenguaje especial.Este lenguaje se puede traducir al lenguaje del

computador.

Por lo general es un archivo de texto.

El texto escrito en dicho lenguaje se denomina el

(11)

Descripción de un algoritmo

Es necesario contar con formas de expresar algoritmos

Diseño del algoritmo antes de codificar

Diseño del algoritmo de manera independiente del lenguaje de programación

Diferentes alternativas

Pseudo - códigoDiagramas de flujo

(12)

Descripción de un algoritmo

Pseudo – código

El algoritmo se expresa en lenguaje naturalExpresa de manera genérica los pasos del

algoritmo

No provee detalles de la implementación

(13)

Descripción de un algoritmo

Diagramas de flujo

Presentan el algoritmo de manera gráfica.De gran utilidad para seguir la “ruta” de un

algoritmo.

(14)

Descripción de un algoritmo

Diagrama de Nassi-Schneidermann

También se denominan diagramas de caja.Menos usado que el diagrama de flujo

Mas ordenado

Ocupa mucho espacio para representar algoritmos

(15)

Construcción de un algoritmo

1. Definir el problema a resolver

2. Identificar las entradas del algoritmo 3. Identificar la salida del algoritmo

4. Definir los pasos a seguir para convertir las entradas en la salida

5. Seguir los pasos y comprobar que el algoritmo sea correcto analizando la salida.

(16)

Construcción de un algoritmo

Construcción de un programa

1. Definir el problema a resolver

2. Definir el algoritmo que lo resuelve

3. Escribir el programa

Escribir cada uno de los pasos del algoritmo en el lenguaje de

programación

4. Ejecutar el programa en el computador

5. Verificar que las salidas sean correctas

(17)

Construcción de un algoritmo

Ejemplo:

Objetivo: Calcular el precio de una manzana Entradas

Precio (en pesos) del kilo de manzanas [K]

Peso (en gramos) promedio de una manzana[P]

Salida

(18)

Construcción de un algoritmo

Inicio

Ingresar valor de K y P

Calcular G = K/100

Calcular M = G x P

(19)

Construcción de un algoritmo

G=K/1000

M=G x P Ingresar K y P

(20)

Construcción de un algoritmo

G=K/1000

M=G x P Ingresar K y P

(21)

Construcción de un algoritmo

Operaciones básicas

 Entrada de datos  Salida de datos

Utilización de variablesUtilización de constantesAplicación de operadoresAsignación de valores

Combinación de operaciones básicas

(22)

Entrada de datos

Los algoritmos son para solucionar tipos de

problemas

Es imprescindible poder entregar entradas

distintas en cada ejecución

(23)

Entrada de datos

Dispositivos de entrada

TecladoMouseBotones

Censores de tactoCámaras digitalesScanners

(24)
(25)

Entrada de datos

Cada dispositivo tiene distintas características.

Por lo general, sirven para cosas distintas

Los sistemas definen un dispositivo de entrada

por defecto

(26)

Salida de datos

De nada sirve implementar un algoritmo si no

podemos saber su resultado.

Al finalizar el algoritmo (o durante), es

imprescindible obtener la información

resultante de su ejecución.

(27)

Salida de datos

Dispositivos de salida

PantallaImpresoraParlantes

Tableros luminososMotores

(28)

Salida de datos

(29)

Salida de datos

Al igual que con la entrada, cada dispositivo

tiene finalidades distintas.

Los sistemas definen un dispositivo de salida por

defecto

(30)

Utilización de variables

Durante la ejecución del algoritmo, es

importante recordar los resultados parciales de

cada paso.

Estos resultados se etiquetan con un nombre.

Al invocar con posterioridad ese nombre,

(31)

Utilización de variables

G=K/1000

Esta variable se denomina G y

(32)

Utilización de variables

La principal característica de una variable es que

su valor puede cambiar en el tiempo.

Usualmente se compara con una caja donde se

puede almacenar una sola “cosa”.

Por lo general, las variables se definen con un

tipo de dato.

(33)

Utilización de constantes

Además de las variables, un algoritmo requiere

de constantes.

A diferencia de las variables, su valor no puede

cambiar en el tiempo.

Las constantes también pueden recibir nombres

para mayor claridad.

(34)

Utilización de constantes

G=K/1000

(35)

Aplicación de operadores

Para obtener resultados, generalmente es necesario “transformar” las entradas en la salida.

Para esto se aplican operadores de distinta índole

Aritméticos ( + , - , * , / )

Lógicos (igual que, mayor que, menor que, y, o, no)Etc.

Los operadores requieren de operandos y entregan un resultado.

(36)

Aplicación de operadores

M=G * P operandos

(37)

Asignación de valores

El resultado de un operador se puede almacenar

en una variable.

Para esto se utiliza un tipo especial de operador.

Este es el operador de

asignación

.

(38)

Asignación de valores

M=G * P

Operador de asignación

(39)

Combinación de operaciones

básicas

Secuencial

Un conjunto de operaciones básicas pueden ser

ejecutadas en forma secuencial.

Una operación no inicia hasta que la anterior

(40)

Combinación de operaciones

básicas

G=K/1000

M=G * P Ingresar K y P

Ingresar K=200 y P=250

G tiene el valor 0,2

M tiene el valor 50 G=K/1000

M=G * P Ingresar K y P

Devolver M

Diagrama de flujo

(41)

Combinación de operaciones

básicas

Selectiva

Un algoritmo puede optar por ejecutar o no una

operación (SI –ENTONCES).

Un algoritmo puede optar por ejecutar una u otra

operación (SI-ENTONCES-SINO).

Esta decisión se basa en un condición.

Esta decisión controla el flujo del algoritmo.

(42)

Combinación de operaciones

básicas

C

3 2

(43)

Combinación de operaciones

básicas

3

si no

4 2 1

(44)

Combinación de operaciones

básicas

Inicio

Ejecutar 1 Ejecutar 2

si se cumple C entonces Ejecutar 3

fin si

(45)

Combinación de operaciones

básicas

Ejemplo: levantarse en la mañana

Inicio

salir de la cama ducharse

tomar desayuno

si esta lloviendo entonces tomar el paraguas

fin si

(46)

Combinación de operaciones

básicas

C

3a 3b

2 1

(47)

Combinación de operaciones

básicas

3a 3b

si no

4 2 1

(48)

Combinación de operaciones

básicas

Inicio

Ejecutar 1 Ejecutar 2

si se cumple C entonces Ejecutar 3a

si no

(49)

Combinación de operaciones

básicas

Ejemplo: levantarse en la mañana

Inicio

salir de la cama ducharse

tomar desayuno

si esta lloviendo entonces llevar la parca

si no

llevar la chaqueta fin si

(50)

Combinación de operaciones

básicas

Estructura de control selectiva

Una condición es cualquier proposición lógica que

tenga un valor verdadero o falso definido.

Este esquema selectivo se denomina “decision

binaria”.

(51)

Combinación de operaciones

básicas

Estructura de control selectiva

Toda decisión se puede llevar a un esquema de

decisión binaria.

Basta con decidir entre una alternativa y todo el

resto

Si se elige “el resto”, se decide entre una

alternativa y el resto del resto.

(52)

Combinación de operaciones

básicas

2a 2b 2c

1

x? x mayor que 0

x igual a 0

(53)

Combinación de operaciones

básicas

x mayor que 0? 1

x menor que 0? si

si no

no

(54)

Combinación de operaciones

básicas

1

2a

x mayor que 0?

x menor que 0?

2b 2c

si

si no

(55)

Combinación de operaciones

básicas

Inicio

Ejecutar 1

Si x es mayor que cero entonces Ejecutar 2a

Si no

(56)

Combinación de operaciones

básicas

Ejemplo: levantarse en la mañana

Inicio

salir de la cama ducharse

tomar desayuno

si esta lloviendo entonces llevar la parca

si no esta lloviendo pero hace frío llevar la chaqueta

(57)

Combinación de operaciones

básicas

Estructura de selección múltiple

Para algunos casos se puede utilizar un esquema selectivo no binario (EN EL CASO DE)

Ejemplo: ingreso de opción de menú de un cajero automático

(58)

Combinación de operaciones

básicas

Botón

giro saldo clave error

1 2 3

(59)

Combinación de operaciones

básicas

giro saldo clave error Botón

1 2 3 etoc

(60)

Combinación de operaciones

básicas

Inicio

en el caso que el botón presionado sea el 1

hacer giro sea el 2

entregar saldo sea el 3

cambiar clave …

(61)

Combinación de operaciones

básicas

Repetitiva

Además de combinar operaciones en forma

secuencial y selectiva, se puede repetir la

ejecución de una operación cuantas veces se desee.

Existen varios esquemas

 Repetir MIENTRAS se cumpla una condición.

(62)

Combinación de operaciones

básicas

MIENTRAS

Se repite una operación mientras una condición

sea verdadera.

Al dejar de serlo, se rompe el ciclo

Si la condición nunca es falsa, se tiene un ciclo

(63)

Combinación de operaciones

básicas

C

2 1

si

(64)

Combinación de operaciones básicas

1

(65)

Combinación de operaciones

básicas

Inicio

ejecutar 1

mientras se cumpla la condición ejecutar 2

(66)

Combinación de operaciones

básicas

Ejemplo validar ingreso de valor positivo

Inicio

definir variable x

asignar el valor -1 a x

(67)

Combinación de operaciones

básicas

HASTA QUE

Se repite la ejecución de una operación hasta que

se cumpla una condición.

La principal diferencia con MIENTRAS es que la

(68)

Combinación de operaciones básicas

C 2 1

(69)

Combinación de operaciones básicas

1

2

(70)

Combinación de operaciones básicas

Inicio

ejecutar 1 repetir

ejecutar 2

(71)

Combinación de operaciones

básicas

Ejemplo

Mismo ejemplo anterior

Inicio

definir variable x repetir

(72)

Combinación de operaciones

básicas

Repetir un número fijo de veces

Muy útil cuando se sabe el numero de

repeticiones a ejecutar.

Por lo general se define una variable que sirve de

contador

El contador mantiene el número de cada iteración.También se puede definir el incremento del

(73)

Combinación de operaciones básicas

Inicio contador, fin contador

(74)

Combinación de operaciones básicas

1

2

(75)

Combinación de operaciones básicas

Inicio

ejecutar 1

desde contador inicial hasta contador final

ejecutar 2 fin desde

(76)

Combinación de operaciones básicas

Ejemplo

 5 0 i

i

Inicio

definir variable “sumatoria”

asignar el valor 0 a “sumatoria”

(77)

Combinación de operaciones

básicas

Combinación de estructuras de control seriales,

selectivas y repetitivas

Cualquier combinación es posiblePueden existir estructuras anidadas

Es importante definir el comienzo y el termino de

(78)

Combinación de operaciones

básicas

Ejemplos

Cachi-pun

(79)

Referencias

Documento similar

En el recuadro indicado se nos solicita un nombre de usuario (0 seguido del DNI -hasta que se complete 9 dígitos-) y una contraseña (en caso de 1ª conexión 0

El objeto del manual es indicar los pasos a seguir para cumplimentar el trámite telemático en la plataforma OVICE (Oficina Virtual) para la comunicación de la

El objeto del manual es indicar los pasos a seguir para cumplimentar el trámite telemático en la plataforma OVICE (Oficina Virtual) para la comunicación de la

El objeto del manual es indicar los pasos a seguir para cumplimentar el trámite telemático en la plataforma OVICE (Oficina Virtual) para la comunicación de solicitud

● Cursos y recursos útiles para trabajar con ODSs.. ● Guías para incorporar ODSs en la

En la búsqueda de empleo, tu imagen de marca personal puede ayudarte a quedar pre-seleccionado como un buen prospecto y posicionarte estratégicamente para dar el siguiente gran

• Las 4 copias que se imprimen son: para el Centro, para el interesado, para la oficina bancaria (caso de solicitarla) y para el Servicio de Acceso (sellado por el centro y la

El propósito de la documentación es dar una organización de los datos y de los pasos a seguir para el desarrollo de la base de datos, así como también es el soporte de las