Nocion de Condici´ on´ -...

54
Condicionales Expresiones booleanas Operadores l ´ ogicos Una alternativa Noci ´ on de Condici ´ on Introducci ´ on a la Programaci´ on Andr ´ es Felipe Barco Santa Pontificia Universidad Javeriana Generado con L A T E X Febrero de 2010 Andr ´ es Felipe Barco Santa Noci ´ on de Condici ´ on

Transcript of Nocion de Condici´ on´ -...

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Nocion de CondicionIntroduccion a la Programacion

Andres Felipe Barco Santa

Pontificia Universidad JaverianaGenerado con LATEX

Febrero de 2010

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Recorderis

Recorderis

Variables Referencian valores (enteros, reales, cadenas,estructuras y mas).

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Recorderis

Recorderis

Variables Referencian valores (enteros, reales, cadenas,estructuras y mas).

Expresiones Combinacion de variables, operadores y valoresque representan un unico valor de resultado.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Recorderis

Recorderis

Variables Referencian valores (enteros, reales, cadenas,estructuras y mas).

Expresiones Combinacion de variables, operadores y valoresque representan un unico valor de resultado.

Sentencias Seccion de codigo que representa un comando oaccion.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Recorderis

Recorderis

Variables Referencian valores (enteros, reales, cadenas,estructuras y mas).

Expresiones Combinacion de variables, operadores y valoresque representan un unico valor de resultado.

Sentencias Seccion de codigo que representa un comando oaccion.

Composicion Union de variables, expresiones y/o sentenciasen una linea de codigo.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

¿Que es una condicion?

Condicion

En general una condicion es la presencia, o ausencia, dedeterminada caracterıstica en un estado determinado de unsistema. La presencia, o aucencia, de cierta caracterıstica enel sistema afecta el comportamiento del sistema en estadosposteriores.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

¿Que es una condicion?

Condicion

En general una condicion es la presencia, o ausencia, dedeterminada caracterıstica en un estado determinado de unsistema. La presencia, o aucencia, de cierta caracterıstica enel sistema afecta el comportamiento del sistema en estadosposteriores.

Si tengo dinero me voy a pasear.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

¿Que es una condicion?

Condicion

En general una condicion es la presencia, o ausencia, dedeterminada caracterıstica en un estado determinado de unsistema. La presencia, o aucencia, de cierta caracterıstica enel sistema afecta el comportamiento del sistema en estadosposteriores.

Si tengo dinero me voy a pasear.

Si me siento mal voy al medico.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

¿Que es una condicion?

Condicion

En general una condicion es la presencia, o ausencia, dedeterminada caracterıstica en un estado determinado de unsistema. La presencia, o aucencia, de cierta caracterıstica enel sistema afecta el comportamiento del sistema en estadosposteriores.

Si tengo dinero me voy a pasear.

Si me siento mal voy al medico.

Si no llueve voy a clase.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

¿Que es una condicion?

Condicion

En general una condicion es la presencia, o ausencia, dedeterminada caracterıstica en un estado determinado de unsistema. La presencia, o aucencia, de cierta caracterıstica enel sistema afecta el comportamiento del sistema en estadosposteriores.

Si tengo dinero me voy a pasear.

Si me siento mal voy al medico.

Si no llueve voy a clase.

Si estudio mucho gano el examen.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Condicion en programas

Es una expresion que determina que rama del codigo seejecuta. Realiza una pregunta al sistema y dependiendo de larespuesta ejecutara tal o cual accion.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Condicion en programas

Es una expresion que determina que rama del codigo seejecuta. Realiza una pregunta al sistema y dependiendo de larespuesta ejecutara tal o cual accion.

Si es una mujer; mostrar catalago 54

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Condicion en programas

Es una expresion que determina que rama del codigo seejecuta. Realiza una pregunta al sistema y dependiendo de larespuesta ejecutara tal o cual accion.

Si es una mujer; mostrar catalago 54

Si tiene permisos de ejecucion; lanzar programa

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Condicion en programas

Es una expresion que determina que rama del codigo seejecuta. Realiza una pregunta al sistema y dependiendo de larespuesta ejecutara tal o cual accion.

Si es una mujer; mostrar catalago 54

Si tiene permisos de ejecucion; lanzar programa

Si la edad es mayor a 65; etapa igual a tercera edad

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Condicion en programas

Es una expresion que determina que rama del codigo seejecuta. Realiza una pregunta al sistema y dependiendo de larespuesta ejecutara tal o cual accion.

Si es una mujer; mostrar catalago 54

Si tiene permisos de ejecucion; lanzar programa

Si la edad es mayor a 65; etapa igual a tercera edad

Si seLoComio igual a true; imprimir pecado de la gula

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Sintaxis General

La sintaxis que define un condicional esta basada en almenosuna consulta al sistema y almenos una sentencia que seejecuta dependiendo de la respuesta.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Sintaxis General

La sintaxis que define un condicional esta basada en almenosuna consulta al sistema y almenos una sentencia que seejecuta dependiendo de la respuesta.

Condicional if

if pregunta :ejecutar accion1ejecutar accion2

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Sintaxis General

La sintaxis que define un condicional esta basada en almenosuna consulta al sistema y almenos una sentencia que seejecuta dependiendo de la respuesta.

Condicional if

if pregunta :ejecutar accion1ejecutar accion2

Identar El cuerpo del condicional debe estar alineadopara ser parte de el. De lo contrario Python locontara como una sentencia fuera del condicional.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Ambientes

Agrupacion

Un ambiente define un escenario en el cual se agrupan loselementos que permiten a las sentencias ejecutar su codigo.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Ambientes

Agrupacion

Un ambiente define un escenario en el cual se agrupan loselementos que permiten a las sentencias ejecutar su codigo.

Es el caso de la shell de python en la cual tenemos loselementos que permiten implementar programas.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Ambientes

Agrupacion

Un ambiente define un escenario en el cual se agrupan loselementos que permiten a las sentencias ejecutar su codigo.

Es el caso de la shell de python en la cual tenemos loselementos que permiten implementar programas.

Es el caso de la presencia del modulo math; cuando loimportamos introducimos en el ambiente todas susfunciones.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

¿Que es una condicion?Sintaxis GeneralAmbientes

Figura: Ambientes en el programaAndres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

A! = B pregunta si A es diferente de B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

A! = B pregunta si A es diferente de B

A < B pregunta si A es menor que B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

A! = B pregunta si A es diferente de B

A < B pregunta si A es menor que B

A <= B pregunta si A es menor o igual que B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

A! = B pregunta si A es diferente de B

A < B pregunta si A es menor que B

A <= B pregunta si A es menor o igual que B

A > B pregunta si A es mayor que B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Expresion

Verdadero o Falso

Una expresion booleana es aquella que tiene como unicosvalores posibles True,False (verdadero o falso).

Operaciones booleanas sobre numeros:

A == B pregunta si A es igual a B

A! = B pregunta si A es diferente de B

A < B pregunta si A es menor que B

A <= B pregunta si A es menor o igual que B

A > B pregunta si A es mayor que B

A >= B pregunta si A es mayor o igual que B

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Ejemplos

A = 10B = 20if A != B :

print “Los numeros no son iguales!”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Ejemplos

A = 10B = 20if A != B :

print “Los numeros no son iguales!”

if (A + B) > 30 :print “La suma de A y B es mayor que 30!”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

ExpresionEjemplos

Ejemplos

A = 10B = 20if A != B :

print “Los numeros no son iguales!”

if (A + B) > 30 :print “La suma de A y B es mayor que 30!”

if A > B :max = A

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Como en los conjuntos

Necesario

En la vida real es necesario componer predicadosverdaderos/falsos. Para ello nosotros usamos las palabras “y”,“o” y “no” con las cuales unimos diferentes preguntas en unasola.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Como en los conjuntos

Necesario

En la vida real es necesario componer predicadosverdaderos/falsos. Para ello nosotros usamos las palabras “y”,“o” y “no” con las cuales unimos diferentes preguntas en unasola.

Si no llueve y me prestan dinero voy a pance.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Como en los conjuntos

Necesario

En la vida real es necesario componer predicadosverdaderos/falsos. Para ello nosotros usamos las palabras “y”,“o” y “no” con las cuales unimos diferentes preguntas en unasola.

Si no llueve y me prestan dinero voy a pance.

Si me llamas o me envias un correo lo recordare.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Como en los conjuntos

Necesario

En la vida real es necesario componer predicadosverdaderos/falsos. Para ello nosotros usamos las palabras “y”,“o” y “no” con las cuales unimos diferentes preguntas en unasola.

Si no llueve y me prestan dinero voy a pance.

Si me llamas o me envias un correo lo recordare.

Si no estudio pierdo programacion.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Tablas de Verdad

¿Que es una tabla de verdad?

Esta tabla contiene los resultados booleanos de combinarexpresiones verdaderas o falsas. Sirven para ayudarnos acomprender el funcionamiento de los operadores logicos.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Tabla del not

X not X

V FF V

Not

Si es falso dara verdadero. Si es verdadero dara falso.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Tabla del and

X Y X and Y

V V VV F FF V FF F F

And

Solo dara verdadero cuando todos los operandos seanverdaderos.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Tabla del or

X Y X or Y

V V VV F VF V VF F F

Or

Solo dara falso cuando todos los operandos sean falsos.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Operadores

llamar or correo Pregunta si se ha llamado o enviado correo.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Operadores

llamar or correo Pregunta si se ha llamado o enviado correo.

(A > 10) and (A < 30) Pregunta si A esta entre 10 y 30 (sinincluir lımites).

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Operadores

llamar or correo Pregunta si se ha llamado o enviado correo.

(A > 10) and (A < 30) Pregunta si A esta entre 10 y 30 (sinincluir lımites).

not llueve Pregunta si no esta lloviendo.

Importante: Estos operadores solo aplican sobre booleanos.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Con Python

if (A != B) or (A < 20) :print “El numero A no es superior a B!”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Con Python

if (A != B) or (A < 20) :print “El numero A no es superior a B!”

if not (nota > 3;0) :print “Perdiste la materia!”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Con Python

if (A != B) or (A < 20) :print “El numero A no es superior a B!”

if not (nota > 3;0) :print “Perdiste la materia!”

if motorEncendido() and (velocidad > 100) :apagarMotor()

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Como en los conjuntosTablas de VerdadTabla del notTabla del andTabla del orOperadoresCon Python

Con Python

if (A != B) or (A < 20) :print “El numero A no es superior a B!”

if not (nota > 3;0) :print “Perdiste la materia!”

if motorEncendido() and (velocidad > 100) :apagarMotor()

if (ang1 == 90) or (ang2 == 90) or (ang3 == 90) :print “Es un triangulo rectangulo.”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Ejecucion alternativa

else

Una segunda forma de sentencia if es la ejecucion alternativa.En esta se cuenta con otra posibilidad de ejecucion.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Ejecucion alternativa

else

Una segunda forma de sentencia if es la ejecucion alternativa.En esta se cuenta con otra posibilidad de ejecucion. Esto lologramos con la sentencia else; de no cumplirse la condiciondel if, se ejecuta la accion definida en el cuerpo del else.

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Else

Sintaxis

if pregunta :ejecutar accion1

else:ejecutar accion2

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Ejemplo

Usando else

if x %2 == 0 :print “El numero es par!”

else:print “El numero es impar!”

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Otras formas

1 Anidar condicionales

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Otras formas

1 Anidar condicionales2 Condicional encadenado elif

Andres Felipe Barco Santa Nocion de Condicion

CondicionalesExpresiones booleanas

Operadores logicosUna alternativa

Ejecucion alternativaElseEjemploOtras formas

Fin de la Clase

Nos vemos en la proxima!!!

Andres Felipe Barco Santa Nocion de Condicion