ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.-...

22
ALGORITMOS Lic. Carla Aguirre Montalvo

Transcript of ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.-...

Page 1: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

ALGORITMOS

Lic. Carla Aguirre Montalvo

Page 2: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

inicio

Fin

1.- Activar el agua2.- Mojarse las manos3.- Aplicar jabón4.- Enjuagarse las manos5.- Desactivar el agua6.- Secarse las manos

Ejemplo : Algoritmo para lavarse las manos

Primitivas de delimitación de Acción

La mayoría de las primitivas tienen un rango de acción.Necesitamos indicar donde comienza y donde terminala acción de una primitiva.

Programación Estructurada

Page 3: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Primitivas de Entrada y Salida de Datos

Los algoritmos para solucionar un problema necesitaran datos, y de la misma manera necesitaran entregar resultados.

Esto nos lleva a la necesidad de utilizar algún medio para poder comunicarnos con el algoritmo.

Leer (variable1, variable2,...)

Imprimir(variable1, variable2,...)

algoritmo

Programación Estructurada

Page 4: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Ejemplo 1A = 80

La variable A toma el valor de 80

Ejemplo 2A = 12B = AC = B

Antes de la ejecución de las tres instrucciones, el valor de A, B y C es indeterminado. Si se desea darles un valor inicial habrá que hacerlo explícitamente.

A = 0 B = 0 C = 0

Ejemplo3A = 10B = 20AUX = AA = BB = AUX

A toma el valor 10;B toma el valor 20;AUX toma el valor de A, o sea, 10;A toma el valor de B, o sea, 20;B toma el valor de AUX, o sea, 10.

Instrucciones de Asignación

Programación Estructurada

Page 5: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Leer (numero, horas, tasa)

Lea del teclado los valores de las variables NUMERO, HORAS y TASA almacenándolas en la memoria.

Si los tres números que se digitan en respuesta a la instrucción son 12325, 32, 1200, significaría que se han asignado a las variables esos valores y equivaldría a la ejecución de las instrucciones :

Numero = 12325 horas = 32tasa = 1200

La sintaxis de estas primitivas es un poco más compleja…ya se

darán cuenta

Instrucciones de Lectura de Datos

Programación Estructurada

Page 6: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

DEFINICION DEL PROBLEMA.Construir un algoritmo que permita sumar dos números.

ANALISIS DEL PROBLEMA.

Problema N°1 Estructuras Secuenciales

¿Qué datos se necesitan para

resolver el problema?

¿Qué información necesitamos que nos proporcione el usuario

para poder obtener una solución al problema?

¿Qué información debe proporcionar la

resolución del problema?

¿Cuál es la información que

debemos dar como salida?

Entrada Proceso Salida

Page 7: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

DEFINICION DEL PROBLEMA.Construir un algoritmo que permita sumar dos números.

ANALISIS DEL PROBLEMA.

4 + 3 = 7 3 + (-4) = -1

A + B = C

A = 4B = 3C = 7

A = 3B = -4 C = -1

Debo obtener dos números cual quiera, luego sumarlos para obtener el resultado

¿ Qué es sumar?

¿ Esto significa que?

¿ Generalizando?

Problema N°1 Estructuras Secuenciales

Page 8: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Entrada Proceso Salida

Variables:AB

Variable:C

Sumar:C = A + B

Problema N°1 Estructuras Secuenciales

ANALISIS DEL PROBLEMA.

¿Existen variables de proceso?:No.

Page 9: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Identificadores

Los identificadores representan los datos de un programa (constantes, variables, tipos de datos). Un identificador es una secuencia de caracteres que sirve para identificar una posición en la memoria de la computadora, que nos permite accesar a su contenido..

Un identificador es un nombre simbólico que se refiere a un dato o programa determinado. Es muy fácil elegir identificadores cuyo nombre guarde estrecha relación con el sentido físico, matemático o real del dato que representan

Page 10: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Identificadores

Ejemplo, es lógico utilizar un identificador llamado salario_bruto o salarioBruto para representar el coste anual de un empleado. El usuario no tiene nunca que preocuparse de direcciones físicas de memoria: el sistema se preocupa por él por medio de una tabla, en la que se relaciona cada identificador con el tipo de dato que representa y la posición de memoria en la que está almacenado.

A B C

Page 11: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Identificadores

Debe comenzar con una letra (A a Z, mayúsculas o minúsculas) y no deben contener espacios en blanco.

Puede tener una longitud hasta 255 caracteres

No se admiten espacios o caracteres en blanco, ni puntos (.), ni otros caracteres especiales.

Los caracteres pueden ser letras, dígitos, el carácter de subrayado (_) y los caracteres de declaración del tipo de la variable (%, &, #, !, @, y $ ).

Page 12: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Identificadores

La declaración de una variable o la primera vez que se utiliza determnan cómo se escribe en el resto del programa. Por tanto, las variables LongitudTotal y longitudtotal son consideradas como idénticas.

El nombre de una variable no puede ser una palabra reservada del lenguaje (For, If, Loop, Next, Val, Hide, Caption, And, ...). Para saber cuáles son las palabras reservadas en un lenguaje puede utilizarse el Help del lenguaje de programación, buscando la referencia Reserved Words

Page 13: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Variable

Una variable es un nombre que designa a una zona de memoria (se trata por tanto de un identificador), que contiene un valor de un tipo de información. Tal y como su nombre indica, las variables pueden cambiar su valor a lo largo de la ejecución de un programa. .

Las variables son valores expresados en letras que van variando en la estructura de un algoritmo por ejemplo tenemos como variables a:

A = 5 significa que la variable A vale 5 XYZ=1 significa que la variable XYZ tiene un valor en un algoritmo = 1 C=”hola” significa que la variable C tiene el valor de una palabra que es

“hola”

Page 14: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Constante

Una constante es un valor continuo en la estructura de un programa que no tiende a cambiar como una variable sino es fijo como por ejemplo:

Completando a las variables existe lo que se denomina constantes las cuales son identificadores pero con la particularidad de que el valor que se encuentra

en ese lugar de la memoria sólo puede ser asignado una única vez. PI = 3.14163 E = 2.718282

Page 15: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Operadores

Los operadores son símbolos que utilizamos para realizar operaciones y comparaciones.

Tipos de operadores: Operadores aritméticos Operadores relacionales Operadores lógicos

Page 16: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Operadores II

Operadores aritméticos

+ suma

- resta

* multiplica

/ divide

^ potencia o exponenciación

mod Residuo

\ o div División entera

Page 17: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Representación

Operando (operador) Operando

ValorEntero o real

Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son

enteros, el resultado es entero; si alguno de ellos es real, el resultado es real.

Page 18: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Operadores III

Lista de operadores relacionales:= igual que

> mayor que

>= mayor o igual que

< menor que

<= menor o igual que

<> diferente que

Page 19: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Operadores IV

Lista de operadores logicos:

AND significa y (and)

OR significa o (or)

NOT significa negacion no (not)

Page 20: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Representación

Expresión (operador) Expresión Relacional Relacional

Falso o Verdadero

Los operadores Lógicos están compuestos por expresiones relacionales, para obtener un resultado de Falso o Verdadero.

Page 21: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Jerarquía de Operadores

Las expresiones tienden a tener una regla de prioridad, ya que puede haber confusión por cual operación el computador debe comenzar es por eso que a continuación se describen éstas reglas:

a) Las operaciones que están encerradas entre paréntesis se evalúan primero. Si existen diferentes paréntesis anidados(interiores unos a otros), las expresiones más internas se evalúan primero.

b) Las operaciones aritméticas dentro de una expresión pueden seguir el siguiente orden de prioridad.

· Operador exponencial · Operador de *, / · Operadores +, - · Operadores div, modEn caso de coincidir varios operadores de igual prioridad en una

expresión o subexpresión encerrada entre paréntesis, el orden de prioridad en éste caso es de izquierda a derecha.

Page 22: ALGORITMOS Lic. Carla Aguirre Montalvo. inicio Fin 1.- Activar el agua 2.- Mojarse las manos 3.- Aplicar jabón 4.- Enjuagarse las manos 5.- Desactivar.

Jerarquía de Operadores (Ejercicios)

. 7 * 10 - 15 mod 3 * 4 + 9 - 15 mod 12 + 9

35 mod 21

13