34
Ing. Mónica Díaz Reátegui CIP. 63424 [email protected] INFORMÁTICA FACULTAD DE INGENIERÍA INDUSTRIAL

Unmsm04 2008

Embed Size (px)

Citation preview

Page 1: Unmsm04 2008

Ing. Mónica Díaz Reátegui CIP. 63424

[email protected]

INFORMÁTICA

FACULTAD DE INGENIERÍA INDUSTRIAL

Page 2: Unmsm04 2008

CONTENIDO

ESTRUCTURA SELECTIVA SIMPLE

Page 3: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

ESTRUCTURA SELECTIVA SIMPLE (SI )

Las estructuras selectivas simples son estructuras de control que contiene una expresión lógica y permite bifurcar el flujo de ejecución hacia dos direcciones. 

Page 4: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

EXPRESIONES LÓGICA

Es un conjunto de operandos y operadores relacionales y lógicos y cuyo resultado es un valor lógico (verdadero o falso) SintaxisOPE1 O. REL OPE2 ´[ O LOGI OPE1 O REL OPE2 ……. ] Donde un operando OPEi puede ser: Una constante numérica (entero y real) Un identificador de variable numérica (entero o real) Una expresión aritmética

Page 5: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

OPERADORES RELACIONALESSon etiquetas que tienen como función realizar comparaciones entre dos operandos. Estas comparaciones son por ejemplo de igualdad, desigualdad mayor, menor, etc.

Si el resultado de la comparación resulta ser verdadero, se retorna "true", en caso contrario "false".

Ejemplo:

Page 6: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

El significado de cada operador es evidente: = = igual que! = diferente que> mayor que< menor que>= mayor o igual que<= menor o igual que

Page 7: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Ejemplos:P == Q

El contenido de la variable P es igual al de la variable Q

A>5

El contenido de la variable A es mayor que 5

X+5 <= 20

El resultado de la expresión X+5 es menor o igual 20

Page 8: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

OPERADORES LÓGICOSLos operadores lógicos son etiquetas que sirven para relacionar dos expresiones lógicas, formando a su vez nuevas expresiones lógicas.

Los operadores lógicos en C son "&&", "||" y "!"

Sintaxis:

Page 9: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

&&El operador "&&" equivale al "AND" o "Y"; devuelve "true" sólo si las dos expresiones evaluadas son "true" o distintas de cero, en caso contrario devuelve "false" o cero. Si la primera expresión evaluada es "false", la segunda no se evalúa.

Generalizando, con expresiones AND con más de dos expresiones, la primera expresión falsa interrumpe el proceso e impide que se continúe la evaluación del resto de las expresiones. Esto es lo que se conoce como "cortocircuito“.

Page 10: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

A continuación se muestra la tabla de verdad del operador &&:

Page 11: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Ejemplo: 

Nota >= 0 && Nota <=20 Será verdadero si las dos expresiones son verdaderas, de lo contrario será falso

Page 12: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

||

El operador "||" equivale al "OR" u "O inclusivo"; devuelve "true" si cualquiera de las expresiones evaluadas es "true" o distinta de cero, en caso contrario devuelve "false" o cero. Si la primera expresión evaluada es "true", la segunda no se evalúa.

Page 13: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Ejemplo:A == 20 || B< 30

Será falso si solo las dos expresiones son falsas, de lo contrario será verdadero

Page 14: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

! El operador "!" es equivalente al "NOT", o "NO", y devuelve "true" sólo si la expresión evaluada es "false" o cero, en caso contrario devuelve "false".

La expresión "!E" es equivalente a (0 == E).  

Page 15: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Ejemplo:! P>10

Será lo contrario del resultado de P>10

Page 16: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

 DIAGRAMA DE FLUJOA través de la selección se incorpora, a la especificación del algoritmo, la capacidad de decisión. De esta forma será posible seleccionar una de dos alternativas de acción posibles durante la ejecución del algoritmo. Por lo tanto, el algoritmo debe considerar dos alternativas, es decir, que hacer en cada uno de los casos.

Page 17: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

PRIMER CASO: Con una instrucción:

Page 18: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

SEGUNDO CASO: Con dos instrucciones:

Page 19: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

CARTA N-S

Page 20: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

PSEUDOCODIGO La selección se realizará de las siguientes formas: Si (condición)

entoncesacción o acciones a realizar si la condición es

verdadera (1)

Fin del Si o falso.

Page 21: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Si (condición)entonces

Acción o acciones a realizar si la condición es verdadera (1)sino

Acción o acciones a realizar si la condición es falsa (2)Fin del Si Donde condición es una expresión lógica que al ser evaluada puede tomar solamente uno de dos valores posibles: verdadero o falso.

Page 22: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Las instrucciones de selección simple en C++, permiten controlar el flujo del programa, seleccionando distintas instrucciones en función de diferentes valores.

Sentencia "if...else" Implementa la ejecución condicional de una instrucción.

Sintaxis:

Page 23: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Si la condición es "true" se ejecutará la instruccion1, si es "false" se ejecutará la instruccion2.

El "else" es opcional, y no pueden insertarse instrucciones entre la instruccion1 y el "else".

Ejemplo:if (a>20) p=s+1;

if( p<10) a=a+1; else a=a+2;

Page 24: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Page 25: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Page 26: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Page 27: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Cuando en un algoritmo se trata de evaluar un conjunto de condiciones se utiliza los if anidados.

Observe en el algoritmo que en la segunda condición se ha omitido una de las expresiones lógica, es debe a que como esta anidado, se entiende que los elementos que están por encima del límite superior se han quedado en la otra dirección. Por lo tanto solo basta controlar el límite inferior.

Page 28: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Page 29: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

EN CÓDIGO Cif( N>=16)

cout << “ A “;else

if ( N >= 13)cout << “ B “;

elseif ( N >= 10)

cout << “ C “;else

if ( N >= 6 )cout << “ D “;

elsecout << “ E “;

Page 30: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

NOTA: Las tabulaciones y salto de línea son para una mejor visualización, recuerde que para el compilador le es indiferente, de tal forma que se podría digitar en una sola línea.

Este fragmento de código se asume que ha habido una validación de las notas entre 0 y 20.

Page 31: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

EJEMPLO:

Se desea saber el monto que se debe pagar por un consumo si se sabe que si el consumo es superior es a 50 soles se le aplica un descuento del 5%. ANÁLISIS

Page 32: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

Page 33: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

CÓDIGO: #include <iostream>#include <stdlib.h>using namespace std;int main(){ float CON, DES,MON; cout << "Ingrese consumo"; cin>> CON; if ( CON>50) DES=CON*0.05; else DES=0 ; MON=CON-DES; cout<<"El monto a pagar es "<<MON<<endl;  system("PAUSE"); return 0; }

Page 34: Unmsm04 2008

ESTRUCTURA SELECTIVA SIMPLE

#include <iostream>#include <stdlib.h>using namespace std;int main(){ float CON, DES=0,MON; cout << "Ingrese consumo"; cin>> CON; if ( CON>50) DES=CON*0.05; MON=CON-DES; cout<<"El monto a pagar es "<<MON<<endl;  system("PAUSE"); return 0;}