unidad 5 estructuras algoritmicas

24
ESTRUCTURAS ALGORITMICAS Prof. Carlos M. Sandoval Rivera [email protected] Unidad 5:

Upload: carlos-m-sandoval

Post on 07-Jun-2015

10.732 views

Category:

Technology


2 download

DESCRIPTION

Unidad 5 ESTRUCTURAS ALGORITMICAS

TRANSCRIPT

Page 1: Unidad 5 Estructuras algoritmicas

ESTRUCTURAS ALGORITMICASProf. Carlos M. Sandoval [email protected]

Unidad 5:

Page 2: Unidad 5 Estructuras algoritmicas

OBJETIVO EDUCACIONAL

0Conocerá las diferentes estructuras algorítmicas como componentes básicos de los programas y aplicara la combinación de ellas para el desarrollo de algoritmos más complejos.

Page 3: Unidad 5 Estructuras algoritmicas

ESTRUCTURAS ALGORITMICAS

0Las estructuras de operación de programas son un grupo de formas de trabajo, que permiten, mediante la manipulación de variables, realizar ciertos procesos específicos que nos lleven a la solución de problemas.

Page 4: Unidad 5 Estructuras algoritmicas
Page 5: Unidad 5 Estructuras algoritmicas

0Estas estructuras se clasifican de acuerdo con su complejidad en:

Estruturasalgoritmicas

Secuenciales

Condicionales

Cíclicas

Asignación

Entrada

Salida

Simples

Multiples

Hacer para

Hacer mientras

Repetir hasta

Page 6: Unidad 5 Estructuras algoritmicas

Estructuras Secuenciales

0La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia.

0Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso.

Page 7: Unidad 5 Estructuras algoritmicas

Estructuras Secuenciales0Una estructura secuencial se representa de la siguiente

forma:

Page 8: Unidad 5 Estructuras algoritmicas

Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmosrepresentados en Pseudocódigo y en diagramas de flujos:

Problema: Tengo un teléfono y necesito llamar a alguien pero no sé como hacerlo.

Page 9: Unidad 5 Estructuras algoritmicas

0 Asignación0 La asignación consiste, en el paso de valores o resultados a una

zona de la memoria. Dicha zona será reconocida con el nombre de la variable que recibe el valor. La asignación se puede clasificar de la siguiente forma:0Simples: Consiste en pasar un valor constate a una variable

(a=15)0Contador: Consiste en usarla como un verificador del numero

de veces que se realiza un proceso (a=a+1)0Acumulador: Consiste en usarla como un sumador en un

proceso (a=a+b)0De trabajo: Donde puede recibir el resultado de una operación

matemática que involucre muchas variables (a=c+b*2/4).

< Variable > <valor o expresión >

Page 10: Unidad 5 Estructuras algoritmicas

0Ejemplos de Asignación

0A = 100 ; significa que a la variable A se le ha asignado el valor 100, ahora A vale 100.

0 suma = 5+10; asigna el valor 15 a la variable suma a través de una asignación aritmética.

0 x  = z + v ; asigna el valor de la suma de las variables z y v a la variable x. El resultado depende de los valores que se asignen a x y a z.

Page 11: Unidad 5 Estructuras algoritmicas

Entrada y Salida de Información

0 Los datos que vamos a obtener del usuario para procesarlos también deben ser asignados a variables, la operación de lectura, lee un dato y lo asigna a una variable. La instrucción para la lectura de un dato es leer o también ingresar.

0 Lectura0 La lectura consiste en recibir desde un dispositivo de entrada

(p.ej. el teclado) un valor. Esta operación se representa en un pseudocódigo como sigue:0Leer a, b

0Donde “a” y “b” son las variables que recibirán los valores

Page 12: Unidad 5 Estructuras algoritmicas

0 Por ejemplo:0 leer numero

Esta instrucción pide al usuario un valor que será asignado a la variable numero, es decir, en numero se almacena el valor ingresado por el usuario.

leer Edad, Peso, Sexo

Representa la lectura de tres valores que se van a almacenar en las variables Edad, Peso y Sexo; en ese mismo orden.

Ya tenemos nuestro primer comando: leer

Page 13: Unidad 5 Estructuras algoritmicas

0 Ahora bien, cuando queramos mostrar el resultado del algoritmo, un mensaje, un valor, etc., vamos a utilizar el comando imprimir. Por ejemplo:

imprimir "Hola" ; muestra en la pantalla el mensaje Hola, Hola va entre comillas porque es una cadena.

imprimir A; muestra en la pantalla el valor que está almacenado en la variable A.

imprimir "El valor del promedio es:", promedioEsta instrucción muestra el mensaje que está entre comillas y luego el valor de la variable promedio. La coma separa el mensaje de la variable. Si promedio vale 5, lo que se verá en la pantalla será:

El valor del promedio es: 5

Page 14: Unidad 5 Estructuras algoritmicas

0Escritura0 Consiste en mandar por un dispositivo de salida (p.ej.

monitor o impresora) un resultado o mensaje. Este proceso se representa en un pseudocódigo como sigue:

0Escribe “El resultado es:”, R

0Donde “El resultado es:” es un mensaje que se desea aparezca y R es una variable que contiene un valor.

Page 15: Unidad 5 Estructuras algoritmicas

Resolución de Problemas

0Antes de resolver un problema por medio de un pseudocódigo, es necesario definirlo y comprenderlo claramente. Leeremos con atención el enunciado del problema y una vez comprendido responderemos a las preguntas:

1. ¿ Qué información debe proporcionar la resolución del problema?

2. ¿ Cuáles son los datos que necesito para resolver el problema?

Page 16: Unidad 5 Estructuras algoritmicas

0La respuesta de la primera pregunta nos dice que salidas va a proporcionar el algoritmo y la segunda qué datos se nos proporcionan para resolver el problema y cuáles debemos calcularlos.

Page 17: Unidad 5 Estructuras algoritmicas

Problemas para resolver

Page 18: Unidad 5 Estructuras algoritmicas

Problema #1: Leer las longitudes de un rectángulo y calcular la superficie y el perímetro.

0Para calcular el área y el perímetro de un rectángulo, se necesitan las medidas del ancho y el alto, estas medidas serán leídas en dos variables.Las salidas serán los valores del área y el perímetro que serán calculados utilizando fórmulas.

Page 19: Unidad 5 Estructuras algoritmicas

Problema #2: Escribir un pseudocódigo que intercambie el valor de dos variables.

0Si se tienen, por ejemplo A = 5 y B = 10, se quiere intercambiar el valor de las variables, así:A = 10; B = 5.

0No podemos asignar directamente el valor de una a la otra porque uno de los valores se destruiría; de modo que esto no se puede hacer:

A = B (el valor de A se pierde y quedaría A = 10 ; B = 10)

Page 20: Unidad 5 Estructuras algoritmicas

La solución consiste en asignar el valor de una de las variables a otra variable auxiliar.

leer A,B ........ Se pide al usuario dos valores. Supongamos que se ha ingresado A = 100 ; B = 5

Auxiliar = A ........ Se asigna a Auxiliar el valor 100. Auxiliar vale 100.

El valor de las variables es:  A B Auxiliar100 5 100

A= B ........ Se asigna a A el valor de B para intercambiar. Ahora el valor de las variables es:

A B Auxiliar5 5 100

El intercambio está hecho. Luego se imprimen los respectivos valores ya intercambiados con la línea:

imprimir A,B

Page 21: Unidad 5 Estructuras algoritmicas

Problemas Secuenciales

0Supongamos que una persona desea invertir su capital en una cooperativa y desea saber cuánto dinero ganara después de un mes si la cooperativa paga a razón de 6% mensual.

0 Inicio0 Leer capital_inv0 gan=capital_inv * 0.060 Imprimir gan

0Fin

Page 22: Unidad 5 Estructuras algoritmicas

Problemas Secuenciales

0Un comerciante recibe un sueldo base mas un 20% extra por comisión de sus ventas, el comerciante desea saber cuanto dinero obtendrá por concepto de comisiones por las dos ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones.

Page 23: Unidad 5 Estructuras algoritmicas

0 Inicio0 Leer sueldo_base, venta1, venta20 total_venta = venta1 + venta20 comision = total_venta * 0.200 total_pagar = sueldo_base + comision0 Imprimir total_pagar, comision0 Fin

Page 24: Unidad 5 Estructuras algoritmicas

ESTRUCTURAS ALGORITMICASProf. Carlos M. Sandoval Rivera