1 unidad III estructuras de control

16
Unidad III Estructuras de Control PROGRAMACIÓN ESTRUCTURADA ESTRUCTURAS DE CONTROL: Las estructuras de control de un lenguaje de programación son métodos de especificar el orden en que las instrucciones de un algoritmo se ejecutarán. Estas estructuras de control son, por consiguientes, fundamentales en los lenguajes de programación y en los diseños de algoritmos, especialmente en los pseudocódigos. LAS TRES ESTRUCTURAS DE CONTROL BÁSICAS SON: 1. ESTRUCTURA SECUENCIAL. 2. ESTRUCTURAS SELECTIVAS. Alternativa simple (Si- entonces / If-then). Alternativa doble (Si-entonces-sino / If-then-else). Alternativa múltiple (Segun sea-caso /Select case). 3. ESTRUCTURAS REPETITIVAS ESTRUCTURA Mientras / Hacer mientras (While). ESTRUCTURA Desde / para (For). Ing. Ruth Figueroa de Flores 1

Transcript of 1 unidad III estructuras de control

Page 1: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

PROGRAMACIÓN ESTRUCTURADA

ESTRUCTURAS DE CONTROL:

Las estructuras de control de un lenguaje de programación

son métodos de especificar el orden en que las instrucciones

de un algoritmo se ejecutarán. Estas estructuras de control

son, por consiguientes, fundamentales en los lenguajes de

programación y en los diseños de algoritmos, especialmente

en los pseudocódigos.

LAS TRES ESTRUCTURAS DE CONTROL BÁSICAS SON:

1. ESTRUCTURA SECUENCIAL.

2. ESTRUCTURAS SELECTIVAS. Alternativa simple (Si- entonces / If-then). Alternativa doble (Si-entonces-sino / If-then-else). Alternativa múltiple (Segun sea-caso /Select case).

3. ESTRUCTURAS REPETITIVAS

ESTRUCTURA Mientras / Hacer mientras (While). ESTRUCTURA Desde / para (For).

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 11

Page 2: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 22

DEFINICIÓN:

Es aquella en la que una acción (instrucción) sigue a otra en

secuencia. Las tareas suceden de tal modo que la salida de

una es la entrada de la siguiente y así sucesivamente hasta

el final del proceso.

PRESENTACIÓN GRÁFICA:

DIAGRAMA DE FLUJO PSEUDOCÓDIGO Algoritmo Identificador

Inicio Declaración de variables Leer ( )

Acción 1 Acción 2

. . . Acción N

Imprimir ( ) Fin

ACCIÓN 1

ACCIÓN 2

ACCIÓN N

ESTRUCTURA SECUENCIAL

Page 3: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

ESTRUCTURAS SELECTIVAS

DEFINICIÓN:

Las estructuras selectivas se encuentran en la solución

algorítmica de casi todo tipo de problemas. Se utilizan

cuando en el desarrollo de la solución de un problema

debemos tomar una decisión, para establecer un proceso

o señalar un camino alternativo a seguir.

CLASIFICACIÓN:

Las estructuras algorítmicas selectivas que se utilizan para

la toma de decisiones lógicas las podemos clasificar de la

siguiente manera:

DECISIÓN O ALTERNATIVA SIMPLE. ( SI – ENTONCES / IF – THEN)

DECISIÓN O ALTERNATIVA DOBLE. ( SI – ENTONCES - SI_NO / IF – THEN - ELSE)

DECISIÓN O ALTERNATIVA MÚLTIPLE. (SEGUN SEA , CASO / SELECT CASE).

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 33

Page 4: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

DEFINICIÓN:

La estructura alternativa simple ejecuta una determinada acción cuando se cumple una determinada condición. La selección SI ENTONCES evalúa la condición y si la Condición es verdadera (Sí), entonces ejecuta la acción S1 y si la condición es falsa (No), entonces no hacer nada.

PRESENTACIÓN GRÁFICA:

DIAGRAMA DE FLUJO

PSEUDOCÓDIGO EN ESPAÑOL PSEUDOCÓDIGO EN INGLÉS SI <condición> ENTONCES

< acción S1> FIN SI

IF <condición> THEN

< acción S1> END IF

No SíCondición

Acción S1

ALTERNATIVA SIMPLE ( SI – ENTONCES / IF – THEN)

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 44

Page 5: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

DEFINICIÓN:

La estructura alternativa doble permite elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una condición. Si Condición es verdadera (Sí) se ejecuta la acción S1 y, si es falsa (No), se ejecuta la acción S2.

PRESENTACIÓN GRÁFICA:

DIAGRAMA DE FLUJO

PSEUDOCÓDIGO EN ESPAÑOL PSEUDOCÓDIGO EN INGLÉS SI <condición> ENTONCES

<acción S1> SI NO

<acción S2> FIN SI

IF <condición> THEN< acción S1>

ELSE < acción S2>

END IF

No Sí Condición

Acción S1Acción S2

ALTERNATIVA DOBLE ( SI – ENTONCES - SI NO / IF – THEN - ELSE)

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 55

Page 6: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 66

DEFINICIÓN:

La estructura alternativa múltiple en caso de, permite que el flujo de un programa bifurque por varias ramas en el punto de la toma de decisión(es), esto en función del valor que toma selector.

PRESENTACIÓN GRÁFICA:

DIAGRAMA DE FLUJO

Caso 1 Caso N Caso si no Caso 2

Selector

Acción Y

Acción 2Acción 1 Acción N Acción X

ALTERNATIVA MÚLTIPLE (SEGUN SEA , CASO / SELECT CASE)

Así, Si el selector toma el Caso 1 se ejecutará la acción 1, si toma el Caso 2 se ejecutará la acción 2, si toma el valor N se realizará acción N, si toma Caso sí no se realizará la acción X.. Luego cuando se continúa con el flujo normal del diagrama se realizará la acción Y.

Page 7: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 77

PSEUDOCÓDIGO EN ESPAÑOL PSEUDOCÓDIGO EN INGLÉS SEGUN SEA < Selector >

CASO 1 < acción 1 > CASO 2 < acción 2 > . . CASO N < acción N > CASO SI NO < acción X >

FIN SEGUN < acción Y >

SELECT CASE < Selector >CASE 1 < acción 1 > CASE 2 < acción 2 > . . CASE N < acción N > CASE ELSE < acción X >

END SELECT < acción Y >

Donde:

Selector : Es la variable o expresión a evaluarse, según la cual se tomará una de las “múltiples” decisiones o alternativas.

Acción 1 : Expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el CASO 1.

Acción 2 : Expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el CASO 2.

Acción N : Expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el CASO N.

Acción X : Expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el CASO SI NO.

Acción Y : Expresa la operación que se va a realizar cuando se continúe con el flujo normal del diagrama.

Page 8: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

DIAGRAMA DE FLUJO

PSEUDOCÓDIGO EN ESPAÑOL PSEUDOCÓDIGO EN INGLÉS SI <condición1> ENTONCES SI <condición2> ENTONCES

<acción S21> SI NO

<acción S22> FIN SI

FIN SI

IF <condición1> THEN IF <condición2> THEN

<acción S21> ELSE <acción S22>

END IF END IF

No

Acción S22

No Sí Condición 2

Acción S21

Condición 1

Estructura selectiva Si entonces

Estructura selectiva Si entonces/ si_no

ESTRUCTURAS SELECTIVAS EN

CASCADAS (ANIDADAS)

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 88

Page 9: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 99

DIAGRAMA DE FLUJO

PSEUDOCÓDIGO EN ESPAÑOL PSEUDOCÓDIGO EN INGLÉS SI <condición1> ENTONCES

SI <condición3> ENTONCES <acción S32>

SI NO <acción S31>

FIN SI SI NO

SI <condición2> ENTONCES <acción S21>

FIN SI FIN SI

IF <condición1> THEN IF <condición3> THEN

<acción S32> ELSE <acción S31>

END IF ELSE

IF <condición2> THEN <acción S21> END IF

END IF

Page 10: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1100

DIAGRAMA DE FLUJO

PSEUDOCÓDIGO EN ESPAÑOL SI <condición1> ENTONCES

SEGUN SEA < Selector > CASO 1 < acción 2 > CASO 2 SI < Condición 3 > ENTONCES <acción S31> FIN SI

CASO SI NO SI <condición4> ENTONCES

<condición41> SI NO

<acción S42> FIN SI

FIN SEGUN SI NO

SI <condición5> ENTONCES <acción 51>

FIN SI FIN SI

Page 11: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1111

EJEMPLOS DE ESTRUCTURA SECUENCIAL: 1. Obtener el promedio de edades de 3 personas.

2. Encontrar el área de un circulo con un radio cualquiera. La fórmula es la siguiente: Área = π radio2.

3. Un vendedor recibe un salario base, más un 10% extra por comisión de su venta. El vendedor desea saber cuánto dinero obtendrá por concepto de comisiones por las tres ventas que realizo en el mes y el total que recibirá en el mes tomando en cuanta, el sueldo base y sus comisiones.

4. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finamente por su compra.

5. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario anterior.

6. En un hospital existe 3 áreas Psicología, pediatría, traumatología. El presupuesto anual del hospital se reparte conforme a la siguiente tabla:

ÁREA PORCENTAJE Psicología 40% Pediatría 30% Traumatología 30%

Obtener la cantidad de dinero que recibirá cada área, para cualquier monto presupuestal.

7. Tres personas deciden invertir su dinero para fundar una empresa cada una de ellos invierte una cantidad distinta. Obtener el porcentaje que cada quien invierte con respecto a la cantidad total invertida.

8. Calcular e imprimir el cuadrado y el cubo de un número entero positivo NUM.

9. El dueño de una tienda compra un artículo a un precio determinado. Obtener el precio en que lo debe vender para obtener una ganancia del 30%.

10. Dados como datos la base y la altura de un rectángulo, calcule el perímetro y la superficie del mismo.

Page 12: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

EJEMPLOS DE ESTRUCTURA SELECTIVAS SIMPLE: 1. Dado como datos la calificación de un alumno en un examen, escribir

“Aprobado” en caso de que esa calificación fuese mayor o igual que 8.

2. En un almacén se hace un 20% descuento a los clientes cuya compra supera

los $100 ¿Cuál será la cantidad de dinero que pagará por su compra.

3. Dado como dato el sueldo de un trabajador, aplíquele un aumento del 15% si

su sueldo es inferior a $ 500. ¿Cuál es el nuevo salario del trabajador?.

4. Un hombre desea saber cuánto se ganará por concepto de interés sobre la

cantidad que tiene en inversión en el Banco Cuscatlan. Él decidirá reinvertir

los intereses simples y cuando estos excedan a $ 5000, es ese caso desea

saber cuánto dinero tendrá finalmente en su cuenta.

5. El número de sonidos emitidos por un grillo en un minuto, es una función de la

temperatura. Como resultado de esto, es posible determinar el nivel de la

temperatura haciendo uso de un grillito como termómetro.

La fórmula para la función es:

404+=

Nt

6. Las raíces reales de la expresión ax2 + bx + c = 0 se obtienen a través de la

fórmula:

aacbbx

242 −±−

= , Si b2 – 4ac ≥ 0

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1122

Page 13: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1133

EJEMPLOS DE ESTRUCTURA SELECTIVA DOBLE: 1. Determinar si un alumno “Aprueba o “Reprueba “ un curso, sabiendo que

aprobará si su promedio de tres notas es mayor o igual a 7; reprueba en caso

contrario.

2. Un empleado necesita calcular su salario semanal, el cual se obtiene de la

siguiente manera:

Si trabaja 40 horas o menos se le pagan $4 por hora.

Si trabaja más de 40 horas se le paga $ 4 por cada una de las primera 40

horas y $6 por cada hora extra.

3. En un almacén se hace un 20% de descuento a los clientes cuya supere los $

500. ¿Cuál será la cantidad de dinero que pagará una persona por su

compra?.

4. Una empresa quiere hacer una compra de varias piezas de la misma clase a

un fabricante de refacción. La empresa, dependiendo del monto total de la

compra, decidirá qué hacer para pagar al fabricante.

Si el monto total de la compra excede de $ 500 000 la empresa tendrá la

capacidad de invertir de su propio dinero un 55% del monto de la compra

pedir prestado al banco un 30%, y el resto lo pagará solicitando un crédito

al fabricante.

Si el monto total de la compra no excede de $500 000 la empresa tendrá

la capacidad de invertir su propio dinero un 70% y el restante 30% lo

pagará solicitando crédito al fabricante.

El fabricante cobra por concepto de intereses un 20% sobre la cantidad que

se le pague a crédito.

Page 14: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1144

EJEMPLOS DE ESTRUCTURA SELECTIVA MÚLTIPLE:

1. dados como datos dos variables de tipo entero, obtenga el resultado de la siguiente función:

UMvalor de Nuier otro Para cualq UM Si N / V Si NUM V M Si NU * V

f(val)VAL

⎪⎪⎩

⎪⎪⎨

==

=

=∧

0310021001100

2. Dados como datos la categoría y el sueldo de un trabajador, calcule el aumento correspondiente teniendo en cuenta la siguiente tabla, Imprimir la categoría del trabajador y su nuevo sueldo.

CATEGORÍA AUMENTO

1 15 % 2 10 % 3 8 % 4 7 %

3. Construya un Pseudocódigo y un diagrama de flujo que permita realizar operaciones aritméticas elementales, según la clave ingresada.

CLAVE OPERACIÓN + Suma - Resta * Multiplicación / División

4. Dados como datos el modelo de un vehículo y su precio, determine el valor

final que debe pagar el comprador. El concesionario está haciendo

descuento teniendo en cuenta el modelo, con base en la siguiente tabla:

CLAVE OPERACIÓN Cultas 8 %

Cabalier 5 % Chevy 6 %

Century 9 %

Page 15: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

EJEMPLOS DE ESTRUCTURA SELECTIVAS ANIDADAS: 1. Dado como dato un número entero, determine e imprima si el mismo es

positivo, negativo o nulo.

2. Dado como datos dos números enteros, determine cual es el mayor.

3. Dados dos números enteros, determine si un número es divisor de otro.

4. Unos balones de fútbol tiene un precio de $17 cada uno, si se adquiere menos

de 3; $13 si se compra un mínimo de 3 pero menor de 10, $ 10 cada uno si se

compra de 10 a mas. Formule el Pseudocódigo que lea el número de balones

y que imprima su costo.

5. hacer un algoritmo que evalúe la siguiente función:

X Si X Xi SX XSi x

F(X)⎪⎩

⎪⎨

≥−<≤−−−<−

83832

312

6. Un vendedor recibe sus comisiones en $ según la siguiente escala de ventas:

0 - 500 2 % 501 - 1000 3 %

1001 - 5000 5 % MAS DE - 5000 7 %

7. Una tienda efectúa un descuento a los clientes dependiendo del monto de la

compra. El descuento se efectúa con base en el siguiente criterio:

Monto DescuentoSi el monto es menor que $ 500 No hay Si el monto está comprendido entre $ 500 y $ 1 000 5 % Si el monto está comprendido entre $ 1000 y $ 7 000 11 %

Si el monto está comprendido entre $ 7 000 y $ 15 000 18 % Si el monto es mayor a $ 15 000 25 %

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1155

Page 16: 1 unidad III estructuras de control

UUnniiddaadd IIIIII EEssttrruuccttuurraass ddee CCoonnttrrooll

IInngg.. RRuutthh FFiigguueerrooaa ddee FFlloorreess 1166

8. Calcular lo que hay que pagarle a un trabajador teniendo en cuenta su sueldo

y las horas extras trabajadas. Para el pago de horas extras se tiene en cuenta

además la categoría del trabajador.

Categoría Precio horas extras 1 $ 30 2 $ 38 3 $ 50 4 $ 70

9. Dados como datos la matrícula de un alumno, la carrera en la que está

inscrito, su semestre y su promedio; determine si el mismo es apto para

pertenecer a alguna de las facultades menores que tiene la universidad. Si el

alumno es aceptado teniendo en cuenta las especificaciones que se listan

abajo, se debe imprimir su matrícula, carrera y la palabra “Aceptado”.

Especificaciones para determinar a las facultades menores:

Economía : Semestre >= 6 y Promedio >= 8.8 Computación : Semestre > 6 y Promedio > 8.5 Administración : Semestre > 5 y Promedio > 8.5 Contabilidad : Semestre > 5 y Promedio > 8.5

10. Realizar operaciones aritméticas elementales, según la clave ingresada.

CLAVE OPERACIÓN + Suma - Resta * Multiplicación / División

Pero suponga que el sustraendo pueda tomar cualquier valor, incluso 0.

Construya un pseudocodigo que considere este caso.