Está en la página 1de 8

Universidad de Pamplona

Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------
ESTRUCTURAS DE CONTROL

Las estructuras de control controlan el flujo de ejecución de un programa o función. Permiten


combinar instrucciones o sentencias individuales en una simple unidad lógica con un punto de
entrada y un punto de salida.

Estructuras de Control de Selección

Estas estructuras se caracterizan y distinguen porque antes de ejecutar una o varias


instrucciones, se debe realizar una o varias preguntas que indican si el bloque se debe ejecutar
o no.

Controla la ejecución de las asignaciones, cuando no se necesita que se ejecuten todas

Gráficamente sería: en la función uno (fun1) se ejecutan todas las instrucciones primero las rojas
y luego las azules y en la función 2 (fun2) se tiene una condición para realizar las instrucciones
rojas o la instrucción azul.
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

Las estructuras selectivas las podemos dividir en simples, dobles, compuestas o múltiples.

 Sentencia selectiva simple (if)

En python, la estructura de control de selección principal es una sentencia if. La sentencia if


tiene dos alternativas o formatos posibles. El formato más sencillo tiene la sintaxis siguiente:

if (expresion):
accion

La sentencia if funciona de la siguiente manera. Cuando se alcanza la sentencia if dentro de


un programa, se evalúa la expresión entre paréntesis que viene a continuación del if. Si dicha
Expresión es verdadera, se ejecuta la Acción; en caso contrario no se ejecuta la Acción (en su
formato más simple, Acción es una sentencia simple y en los restantes formatos es una
sentencia compuesta). En cualquier caso la ejecución del programa continúa con la siguiente
sentencia del programa. La Figura muestra un diagrama de flujo y diagramas de N – S que
indica el flujo de ejecución del programa:

CONDICION
Expresión
si

Acción Accion A

En python, las instrucciones asociadas al cuerpo de la sentencia if están indicados por la


identación. El cuerpo del if inicia con una línea identada y el fin está determinado por una línea
no identada. Python interpreta un valor diferente de cero como un valor verdadero y un valor de
cero o None es interpretado como un False.

Ejemplo: Prueba de divisibilidad (En Python)

#Funcion que indica si un número es divisible por otro


def divisible (num,div):
esDivisible = False if(
num % div == 0):
esDivisible = True
return esDivisible

numero = 20
divisor = 6

print(divisible(numero,divisor))

Ejemplo: indicar si el número es positivo (En Python)

#Función que indica si un número es positivo


def number_positive(number):
es_positivo = False
if(number > 0):
es_positivo = True
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------
return es_positivo

 Sentencia selectiva doble (if - else)

Al igual que la estructura selectiva simple permite ejecutar, según la validez de una expresión,
un conjunto de acciones, solo que en esta se permite ejecutar uno de dos posibles bloques, siendo
estos mutuamente excluyentes. Este formato de sentencia if tiene la siguiente sintaxis:

if expression:
acción A
else:
acción B

El funcionamiento de esta sentencia será: si la expresión es verdadera entonces se ejecuta el


grupo de acción A de lo contrario se ejecuta el grupo de acciones B. La Identacion es usada para
identificar los bloques.

A continuación, se presenta un diagrama de flujo y diagramas de N – S para representar este tipo


de sentencias.

Expresión CONDICION
si
no

Accion A Accion B Accion A Accion B

Ejemplo: Calcular el mayor de dos números


#Función para calcular el mayor de dos números

def numero_mayor(a,b):
mayor = a
if (a > b):
mayor = a
else:
mayor = b
return mayor

x=2
y=3
nummayor= numero_mayor(x,y)
print("El mayor es",nummayor)
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

Ejemplo: Imprimir mensaje si el número es positivo o negativo (En Python)

#Funcion para indicar si un número es positivo o negativo

def number_positive(number):
es_positivo = 0
if(number < 0):
print("El número es negativo")
else:
print("El número es positivo")

 Sentencias selectivas compuestas

En este tipo de sentencias, se anida una sentencia if – else dentro de otra. Esto
permite realizar múltiples comparaciones en un bloque determinado. La siguiente sería la
estructura de este tipo de sentencia:

if (expression A) :
if(expresion B ):
Accion A
else:
Accion B
else:
Acción C

Los diagramas de flujo respectivos serían:

Expresión

Expresion
Expresión si

Accion C Expresión
si no Accion C
Accion A Accion B
Acc A Acc B

 Sentencias múltiples (if – else if – else)

Hasta este momento habíamos tratado con sentencias selectivas que permitían una de dos
opciones, ahora veremos cómo podemos usar este tipo de sentencias, pero con diferentes
opciones de selección. En este caso se pueden tener n opciones que dependerán de n
condiciones existentes.

La siguiente será la estructura de este tipo de sentencias


Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

if (expresión A):
accion A
elif (expresión B):
accion B

elif (expresión N):


accion N
else:
accion N+1

A continuación, se representa mediante las herramientas antes vistas

Expresiones Booleanas

Para la construcción de expresiones booleanas se utilizan:

 Operandos (Constantes, Variable, Dato retornado por el llamado a una función)


 Operadores (Aritméticos, Lógicos, Relacionales)
 Signos de agrupación (Paréntesis)

Para describir la evaluación a realizar sobre una condición, se utilizan operadores relacionales (o
de comparación):

Símbolo Significado Ejemplo Resultado


== Igual que 5 == 7 False
Distinto rojo !=
!= True
que verde
< Menor que 8 < 12 True
> Mayor que 12 > 7 True
Menor o
<= 12 <= 12 True
igual que
Mayor o
>= 4 >= 5 False
igual que
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

Y para evaluar más de una condición simultáneamente, se utilizan operadores lógicos:

Operador Ejemplo Explicación Resultado


and 5 == 7 and 7 < 12 False and False False
and 9 < 12 and 12 > 7 True and True True
and 9 < 12 and 12 > 15 True and False False
or 12 == 12 or 15 < 7 True or False True
or 7 > 5 or 9 < 12 True or True True
not 7>5 True False

Recordar las siguientes tablas

Tabla and

A B A and B
V V V
V F F
F V F
F F F

Tabla or

A B A or B
V V V
V F V
F V V
F F F

Tabla not

A not A
V F
F V
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

Ejercicio en clase

ÍNDICE DE MASA CORPORAL (IMC)


Una medida de la obesidad se determina mediante el índice de masa corporal (IMC), que se calcula
dividiendo los kilogramos de peso por el cuadrado de la estatura en metros (IMC = peso [kg]/ estatura
[m2]). conclusión, se tiene que el IMC = KG/M2

Conociendo el IMC se clasifican las personas en 4 grupos así:

Grupos Índice de masa corporal (IMC)


0 (Inferior) Menos de 18.5
1 (Normal) 18.5 – 24.9
2 (Superior) 25.0 – 29.9

3 (Obesidad) Igual o más de 30.0

Se necesita realizar una función que conociendo el peso de una persona (KG) y su talla (M) se obtenga
el grupo (0,1,2,3) al cual pertenece.

DOCUMENTACIÓN DE LA FUNCION
Autor: Docentes Programación II
Fecha creación: 05/09/2020
Documentación: En la función “grupoImc” permite identificar el grupo al que pertenece una persona
conociendo su índice de masa corporal (IMC), que se calcula dividiendo los kilogramos de peso por el
cuadrado de la estatura en metros (IMC = peso [kg]/ estatura [m2]). Esta función recibirá como
parámetros peso y talla :
Parámetros:
 Un número real positivo que indica el “peso” de la persona indicada en kilogramos
 Un número real positivo que indica la “talla” de la persona indicada en metros.

Returna:
La función retorna un número entero (0,1,2,3) que indicará el grupo al que pertenece la persona
dependiendo de su IMC.

Ejemplo:
grupoImc(75.3,1.75) = 1
grupoImc(45.5,1.65) = 0
grupoImc(95.5,1.65) = 3
grupoImc(93.5,1.77) = 2

def grupoImc (peso,talla):


imc = peso / (talla * talla)
if(imc<18.5):
grup=0
else:
if((imc >=18.5) and (imc<=24.9)):
grup =1
else:
if((imc>=25)and(imc<=29.9)):
grup=2
else:
grup=3
return grup
Universidad de Pamplona
Programación II
Taller o guía: Estructuras de Control
Elaboró: Docentes Programación II
---------------------------------------------------------------------------------------------------------------------------- -------------------------

// Código de prueba
peso = 93.5
talla = 1.77
grupo = grupoImc (peso,talla)
print("El grupo al que pertenece la persona es: ",grupo)

Ejercicios

1. Dado como dato el salario de un empleado, aplicar un aumento del 10% si el salario es inferior
a 1.000.000 y un 8% en caso contrario.
2. Calcular el valor de la cuota mensual y el número de cuotas a pagar (mediante dos funciones
separadas), por la realización de un préstamo en un banco con las siguientes condiciones: Si el
préstamo es menor de $500000 se paga un interés de 10% sobre el total del préstamo y las
cuotas mensuales quedan de un 3% del monto total. Si el préstamo está entre $500000 y
$1000000 (inclusive) se paga un interés del 7% y las cuotas quedan de un 5% del monto total.
Y si el préstamo es superior a $1000000 se paga un interés del 4% y las cuotas quedan de un
7% del monto total.

También podría gustarte