S03 (condicionales)

29
jlc

Transcript of S03 (condicionales)

jlc

En los lenguajes de programación es común el uso de

condicionales que sirven para denotar diferentes

alternativas que pueden llevarse a cabo dado el valor

de una expresión lógica, el cual siempre será verdadero

o falso.

La forma más simple que tiene un condicional (una

pregunta) es:

SI (expresión lógica) ENTONCES

Instrucciones que se realizan

si la expresión lógica es verdadera

FIN SI

jlc

Una expresión lógica es aquella que sólo puede

devolver dos valores (Verdadero o Falso). Los

valores que pueden aparecer en una expresión lógica

son de 2 tipos: lógicos y relacionales

En una expresión lógica los operandos no tienen

porque ser booleanos aunque se devuelva un valor

booleano.

jlc

< menor a

> mayor a

= igual a

≠ diferente a

menor o igual a

mayor o igual a

jlc

5 > 3

−1

1+2

3−52

> 0

((3 ∗ 2) + 1 − 52) ≤ (42 − (5 − 7))

jlc

En ciertas ocasiones queremos preguntar o evaluar

por más de una condición al mismo tiempo y para esto

están los operadores lógicos

Conector Y

Conector Ó

Conector NO

jlc

Y, Ó, son operadores binarios (necesitan 2 operandos

de tipo lógico). El resultado es lógico y depende

de:

jlc

Operando 1 Operando 2 Conector Y Conector Ó

V V V V

V F F V

F V F V

F F F F

El NO niega

Prioridades de los operadores: lo más prioritario

es el NO Luego el Y y el Ó.

jlc

NOT 1/0

V F

F V

( ¿Es mayor de edad? ) Y ( ¿tiene cedula? )

(NOTA ≥ 1.95) Y (NOTA < 2.95 )

((3 ∗ 5) < 12) Y ((5/2 + 3)>6)

(NO((3 + 5) < 12))) Ó ((5/2 + 3) ≠ 6) Y (7 − 2 ≥ (5^0.5))

jlc

Diseñar un algoritmo para leer la edad de una

persona y decir si es mayor de edad

INICIO

ESCRIBIR: Digite la edad de la persona

LEER: ed

SI (ed ≥ 18) ENTONCES

ESCRIBIR: “Mayor de edad”

FIN SI

FIN

jlc

inicio

fin

Digite la edad de

la persona

Mayor de

edad

ed

ed ≥ 18

Los condicionales también sirven para representar

alternativas de ejecución, es decir, que se haga

una cosa u otra dependiendo del valor de una

expresión lógica.

La forma en este caso es:

SI (expresión lógica) ENTONCES

Instrucciones que se realizan si la

expresión lógica es verdadera

SI NO

Instrucciones que se realizan si la

expresión lógica es falsa

FIN SI

jlc

Diseñar un algoritmo para saber si una

persona puede votar o no

1. INICIO PROGRAMA:

2. ESCRIBIR Identificar si una puede votar o no

3. ESCRIBIR Digite la edad

4. LEER ED

5. SI ED>=18 ENTONCES

6. ESCRIBIR Si puede votar

7. SI NO

8. ESCRIBIR No puede votar

9. FIN SI

10. FIN PROGRAMA

jlc

Desarrollar un algoritmo para resolver la

ecuación cuadrática de la forma:

𝑨𝑿𝟐 + 𝑩𝑿 + 𝑪 = 𝟎

Cuáles son las etapas para el cálculo de las

posibles raíces?

jlc

ENTRADA

DE DATOS

PROCESAMIENTO

• Cálculos

• Relaciones lógicas

•Decisiones

SALIDA

DE

RESULTADOS

jlc

Para resolver la ecuación cuadrática de la forma:

𝑨𝑿𝟐 + 𝑩𝑿 + 𝑪 = 𝟎

Se hace uso de la siguiente fórmula:

0,2

42

2,1

AsiA

ACBBXR/.

jlc

0,2

42

2,1

AsiA

ACBBX

Paso 1: calcular 𝐵^2

Paso 2: calcular 𝐵^2 − 4𝐴𝐶

Paso 3: calcular (𝐵^2 − 4𝐴𝐶)^(1/2)

Paso 4: −𝐵 ± (𝐵^2 − 4𝐴𝐶)^(1/2)

Paso 5:

jlc

DATOS DE

ENTRADA

PROCESAMIENTO

• Cálculos

• Relaciones lógicas

SALIDA (resultados)

A, B, C X1, X2 A 0

A

ACBBX

2

42

2,1

jlc

1. Inicio

2. Escribir: Programa para resolver ecuación cuadrática

3. Escribir: Digite los coeficiente A,B,C

4. Leer: A,B,C

5. Si A=0 entonces

6. Escribir: No es una ecuación cuadrática

7. Si no

8. D=B^2-4*A*C

9. Si D<0 entonces

10. Escribir: Las raíces son imaginarias

11. Si no

12. Escribir: Las raíces son reales

13. calcular: X1=(-B+(D)^(0.5))/(2*A)

14. calcular: X2=(-B-(D)^(0.5))/(2*A)

15. escribir: Las raíces son X1 y X2

16. Fin si

17. Fin si

18. Fin programa

jlc

0,2

42

2,1

AsiA

ACBBX

𝑨𝑿𝟐 + 𝑩𝑿 + 𝑪 = 𝟎

19

D=B^2-4AC

A, B, C

NO

SI

A = 0 ? “No hay

ecuación”

D>=0

SI NO

jlc

0,2

42

2,1

AsiA

ACBBX

𝑨𝑿𝟐 + 𝑩𝑿 + 𝑪 = 𝟎

20

X1=(-B+D^(1/2))/(2A)

X2=(-B-D^(1/2))/(2A)

Las raíces son:

X1 y X2

D>=0

SI NO

Raíces

imaginarias

jlc

0,2

42

2,1

AsiA

ACBBX

1. INICIO PROGRAMA:

2. ESCRIBIR Introduzca un número

3. LEER Número

4. SI Número>0 ENTONCES

5. ESCRIBIR El número introducido es positivo

6. SI NO

7. SI Número<0 ENTONCES

8. ESCRIBIR El número introducido es negativo”

9. SI NO

10. ESCRIBIR El número es cero

11. FIN SI

12. FIN SI

13. FIN PROGRAMA

jlc

Cuando hay más de dos alternativas (no es sólo la

parte verdadera y falsa de una única expresión

lógica), se puede emplear el condicional múltiple de

la siguiente manera:

SI (expresión lógica 1) ENTONES

Se realizan si la expresión lógica 1 es verdadera

DE LO CONTRARIO SI (expresión lógica 2) ENTONES

Se realizan si la expresión lógica 1 es falsa y la

expresión lógica 2 es verdadera

SI NO

Se realizan si todas las expresiones lógica son falsas

FIN SI

jlc

Diseñar un algoritmo para leer la nota final de un estudiante y decir si ganó, perdió definitivamente o si puede habilitar (suponiendo que se pueda)

INICIO

ESCRIBIR: Digite la nota del estudiante

LEER: n

SI (𝑛 ≥ 2.95) ENTONCES ESCRIBIR: “El estudiante ganó”

DE LO CONTRARIO SI 𝑛 ≥ 1.95 ENTONCES

ESCRIBIR: “El estudiante puede habilitar”

SI NO

ESCRIBIR: “El estudiante perdió”

FIN SI

FIN

jlc

SI (A > B) ENTONCES

SI ( A > C) ENTONCES

ESCRIBIR: A “ es el mayor”

FIN SI

FIN SI

SI (B > A) ENTONCES

SI (B > C) ENTONCES

ESCRIBIR: B “ es el mayor”

FIN SI

FIN SI

SI (C > A) ENTONCES

SI (C > B) ENTONCES

ESCRIBIR: C “ es el mayor”

FIN SI

FIN SI

• Implica utilizar 6

estructuras de

selección lógica.

• Cada Si debe

cerrarse con Fin Si

jlc

SI (A > B Y A > C) ENTONCES

ESCRIBIR: A “ es el mayor”

FIN SI

SI (B > A Y B > C) ENTONCES

ESCRIBIR: B “ es el mayor”

FIN SI

SI (C > A Y C > B) ENTONCES

ESCRIBIR: C “ es el mayor”

FIN SI

• Implica utilizar

3 estructuras de

selección lógica.

• Cada Si debe

cerrarse con Fin Si

•Emplea una

expresión lógica

compuesta.

Solución 1 al problema “mayor de

tres valores A, B, C”

jlc

SI (A > B Y A > C) ENTONCES

ESCRIBIR: A “ es el mayor”

SI NO

SI (B > A Y B > C) ENTONCES

ESCRIBIR: B “ es el mayor”

SI NO

ESCRIBIR: C “ es el mayor”

FIN SI

FIN SI

• Implica utilizar

sólo 2 estructuras

de selección

lógica.

• Cada Si debe

cerrarse con Fin

Si

•Emplea

expresiones

lógicas

compuestas.

Solución 1 al problema “mayor de

tres valores A, B, C”

jlc

SI (A > B Y A > C) ENTONCES

ESCRIBIR: A “ es el mayor”

DE LO CONTRARIO (B > A Y B > C) ENTONCES

ESCRIBIR: B “ es el mayor”

SI NO

ESCRIBIR: C “ es el mayor”

FIN SI

• Utiliza

sólo 1

estructura de

selección

lógica.

• Cada ElseSi

debe ir en un

renglón.

•Emplea una

expresión

lógica

compuesta.

Solución 1 al problema “mayor de

tres valores A, B, C”

jlc

RELACIÓN OPERADOR C++ MATLAB VBA

Mayor que > > > >

Menor que < < < <

Mayor o igual ≥ >= >= >=

Menor o igual ≤ <= <= <=

Igual que = == == =

Diferente de ≠ != ~= <>

jlc

CONECTOR C++ MATLAB VBA

Y && && AND

Ó || || OR

No ! ~ NOT

ENRIQUE BARRUETO TUTOR SITE - Algoritmos.[En línea].

Disponible: http://enriquebarrueto0.tripod.com/algoritmos.htm

Fundamentos De Programación .[En línea]. Disponible:

http://www.virtual.unal.edu.co/cursos/sedes/medellin/programaci

on/html/c1_0.html.

jlc