2. escritura de algoritmos

Preview:

Citation preview

Escritura de Algoritmos

Elaborado por: Alberto Pérez 1

Escritura de algoritmos

• Recordemos que un algoritmo es un

método o conjuntos de reglas para

solucionar problemas.

– Debe de ser una secuencia definida.

– Solo se puede ejecutar una acción a la

vez.

Elaborado por: Alberto Pérez 2

Escritura de algoritmos

• Ejemplo:

• ¿Qué hacer para

ver la nueva

película de Harry

Potter?

Elaborado por: Alberto Pérez 3

Escritura de algoritmos

1. Ir al cine.

2. Comprar un boleto.

3. Ver la película.

4. Regresar a casa.

El algoritmo consta de 4 acciones

básicas, cada una de ellas debe serejecutada antes de realizar la siguiente.

Elaborado por: Alberto Pérez 4

Escritura de algoritmos

• Como podemos verel algoritmo es muysencillo, pero es deforma general.

• Ahora tenemos que descomponerlo en pasos mas simples ( divide y vencerás ).

Elaborado por: Alberto Pérez 5

Escritura de algoritmos

1. Inicio

2. Ver la cartelera de cines en internet

3. Si no esta la de Harry Potter entonces1. Decidir otra actividad

2. Ir al paso 7

fin SI no

SI esta entonces

1. Ir al cine

fin si

Elaborado por: Alberto Pérez 6

Escritura de algoritmos

4. Si hay fila entonces1. Formarse en ella

2. Mientras haya personas adelante hacer1. Avanzar en la fila

Fin mientras

fin si

Elaborado por: Alberto Pérez 7

Escritura de algoritmos

5. Si hay boletos entonces1. Comprar un boleto2. Pasar a la sala que la expone

3. Localizar lo(s) asiento(s)

4. Mientras proyectan la película hacer 1. Ver la película

Fin mientras

5. Salir de el cine

si no

6. refunfuñar

fin si

Elaborado por: Alberto Pérez 8

Escritura de algoritmos

6. Volver a casa

7. Fin

Las palabras en negritas representan keywords de control de flujo y de toma de decisiones.

Otro aspecto es la IDENTACIÓN o sangría en la escritura de los algoritmos.

Elaborado por: Alberto Pérez 9

REPRESENTACIÓN GRÁFICA

Elaborado por: Alberto Pérez 10

REPRESENTACIÓN GRÁFICA

• Para representar unalgoritmo se debeutilizar algún métodoque permitaindependizar dichoalgoritmo del lenguajede programación

elegido.

Elaborado por: Alberto Pérez 11

REPRESENTACIÓN GRÁFICA

• Los métodos usuales para representar un algoritmo son:

1- Diagrama de flujo.

2-Lenguaje deespecificación de algoritmos:pseudocódigo

3-FórmulasEl punto 3 no suele ser fácil de plasmar en un algoritmo

Elaborado por: Alberto Pérez 12

DIAGRAMAS DE FLUJO

• Un diagrama de flujo (flowchart) es

una de las técnicas de

representación mas antigua y a la

vez más utilizada aunque su empleo

ha disminuido considerablemente.

Es un diagrama que utiliza los

símbolos estándar mostrados a

continuación

Elaborado por: Alberto Pérez 13

DIAGRAMAS DE FLUJO

• Un diagrama de flujo (flowchart) es

una de las técnicas de

representación mas antigua y a la

vez más utilizada aunque su empleo

ha disminuido considerablemente.

Es un diagrama que utiliza los

símbolos estándar mostrados a

continuación

Elaborado por: Alberto Pérez 14

DIAGRAMAS DE FLUJO

Elaborado por: Alberto Pérez 15

DIAGRAMAS DE FLUJO• Ejemplo

Elaborado por: Alberto Pérez 16

DIAGRAMAS DE FLUJO

• Practica

Se desea contar e imprimir elnúmero de ceros de lassiguiente secuencia.5 3 0 2 4 4 0 0 2 3 6 0 2Elaborar pseudocódigo ydiagrama de flujo

Elaborado por: Alberto Pérez 17

DIAGRAMAS DE FLUJO

Practica

Dados 3 números, determinar si la

suma de cualquier pareja de ellos

es igual al 3 numero.

Si se cumple esta condición escribir

iguales en caso contrario escribir

distintos

Elaborado por: Alberto Pérez 18

PSEUDOCÓDIGO

Elaborado por: Alberto Pérez 19

PSEUDOCÓDIGO

• El pseudocódigo esun lenguaje deespecificación odescripción dealgoritmos.

• Es el paso decodificación final,esto es, latraducción a unlenguaje deprogramación.

Elaborado por: Alberto Pérez 20

PSEUDOCÓDIGO

• Se considera un

primer borrador

• No puede ser

ejecutado por una

computadora

Elaborado por: Alberto Pérez 21

PSEUDOCÓDIGO

• El programador se

puede concentrar

en la lógica y en las

estructuras de

control y no

preocuparse por las

reglas de un

lenguaje específico

Elaborado por: Alberto Pérez 22

PSEUDOCÓDIGO

• Un algoritmo debe

llevar palabras

similares a los key

words como son:

inicio, fin, parada, le

er, escribir, si_enton

ces, si_no, mientras,

fin_mientras, repetir,

hasta_ que

Elaborado por: Alberto Pérez 23

ESTRUCTURA GENERAL DE

UN PROGRAMA

CONCEPTO DE PROGRAMA

Elaborado por: Alberto Pérez 24

CONCEPTO DE PROGRAMA

• Un programa de computadora es un

conjunto de instrucciones, ordenes

dadas a la máquina, que producirán

la ejecución de una determinada

tarea

• En esencia, un programa es un medio

para conseguir un fin

Elaborado por: Alberto Pérez 25

PARTES CONSTRUCTIVAS DE UN

PROGRAMA• El programador

debe establecer elconjunto deespecificacionesque debe contenerel programa:

*Entrada*Salida*Algoritmos de resolución

Elaborado por: Alberto Pérez 26

INSTRUCCIONES Y SUS TIPOS

DEFINIR ACCIONES

Elaborado por: Alberto Pérez 27

INSTRUCCIONES Y SUS TIPOS

• Un programa puedeser lineal o no lineal.Un programa es linealsi las instrucciones seejecutansecuencialmente, sinbifurcacionesdecisiones ni

comparaciones.

Elaborado por: Alberto Pérez 28

INSTRUCCIONES Y SUS TIPOS

• En le caso de

algoritmos las

instrucciones se

suelen conocer

como acciones.

Elaborado por: Alberto Pérez 29

TIPOS DE INSTRUCCIONES

• Como hemos dicho antes lasinstrucciones de un algoritmo sonindependientes del lenguaje. Laclasificación mas usual es:

1-Instrucciones de inicio/fin2-Instrucciones de asignación. , =3-Instrucciones de lectura4-Instrucciones de escritura5-Instrucciones de bifurcación

Elaborado por: Alberto Pérez 30

INSTRUCCIONES DE

ASIGNACION• Como ya son conocidas por el

estudiante, reforzaremos su funcionamiento con ejemplos:

a) A 80 la variable A toma el valor de 80b) ¿Cuál será el valor que tomará la variable C tras la ejecución de las siguientes instrucciones?A 12B AC B

• A contiene 12, B contiene 12 y C contiene 12

Elaborado por: Alberto Pérez 31

INSTRUCCIONES DE

ASIGNACION

• c) ¿Cuál es el valor de la variable AUX

al ejecutarse la instrucción 5?

1- A 10

2- B 20

3- AUX A

4- A B

5- B AUX

Elaborado por: Alberto Pérez 32

INSTRUCCIONES DE

ASIGNACION

• d) ¿Cuál es el significado N N+5 si N tiene el valor actual de 2

N N+5

Se debe pensar en la variable comouna posición de memoria, cuyocontenido puede variar medianteinstrucciones de asignación.

Elaborado por: Alberto Pérez 33

INSTRUCCIONES DE

ASIGNACION• Ejemplo:

Un buzón de correos,donde el número decartas depositadas en élvariará según elmovimiento diario delcartero de introducciónde cartas, o del dueño delbuzón de extracción dedichas cartas.

Elaborado por: Alberto Pérez 34

INTRUCCIONES DE LECTURA DE

DATOS (ENTRADA)• Esta instrucción lee datos de un dispositivo de

entrada. ¿Cuál será el significado de las instrucciones siguientes?

leer (NÚMERO, HORAS, TASA)

La lectura se archivara en la memoria, si los 3 números se teclean en respuesta a la instrucción son 12,34,56 significaría que se han asignado a las variables esos valoresNÚMERO 12HORAS 34TASA 56

Elaborado por: Alberto Pérez 35

INTRUCCIONES DE ESCRITURA

(SALIDA)

• Estas instrucciones se escriben en un dispositivo de salida.A 100B 200C 300

escribir (A, B, C)

Se visualizara en pantalla los valores dados

Elaborado por: Alberto Pérez 36