Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Taller Estructura de Selección
Taller Estructura de Selección
Programación 1
En una estructura de selección/decisión, el algoritmo al ser ejecutado toma una decisión, ejecutar o
no ciertas instrucciones si se cumplen o no ciertas condiciones. Las condiciones devuelven un valor,
verdadero o falso, determinado así la secuencia a seguir.
If condición then
bloque de sentencias
Else
bloque de sentencias
End If
Aunque, basándose en las buenas prácticas para la enseñanza de programación, esta sentencia
puede tener también la siguiente estructura:
If condición1 then
bloque de sentencias
End If
If condición2 then
bloque de sentencias
End If
Ejercicio 33 de la guía de programación: Calcular el número de pulsaciones que debe tener una
persona por cada 10 segundos de ejercicio aeróbico; la fórmula que se aplica cuando el sexo es
femenino es:
num. pulsaciones = (220 - edad)/10
y si el sexo es masculino:
num. pulsaciones = (210 - edad)/10
Solución:
Cada minuto extra tiene un costo de 855 pesos y los mensajes de texto un costo de 370
pesos (Para cualquier plan).
Solución:
En esta caso presentamos dos soluciones, la primera usando sentencias anidadas:
'Se crea la función que recibe como parámetros el tipo de plan, los minutos y mensajes gastados
Function miplan2(ByVal tipo As String, ByVal min, tex As Double) As Double
Universidad de Pamplona
Programación 1
miplan2 = factura 'Se asigna el valor a retornar cuando sea llamada desde Excel
End Function
'Se crea la función que recibe como parámetros el tipo de plan y los minutos
'gastados y devuelve el valor a pagar por minutos adicionales
Function recargominutos(ByVal tipo As String, ByVal min As Double) As Double
'Se define la variable valor para realizar el calculo
Universidad de Pamplona
Programación 1
'Se crea la función que recibe como parámetros el tipo de plan y mensajes
'gastados y devuelve el valor a pagar por mensajes adicionales
Function recargomensajes(ByVal tipo As String, ByVal tex) As Double
'Se define la variable valor para realizar el calculo
'Se define también la varibale menadi para calculos auxiliares
Dim valor, menadi As Double
valor = 0
'Se define el primer condicional, el cual evaluara las condiciones si está en el plan ideal
If (tipo = "Ideal") Then
menadi = tex - 10 'Se calcula los minutos adicionales gastados por el usuario
End If
'Se define el primer condicional, el cual evaluara las condiciones si está en el plan extension
If (tipo = "Extensión") Then
menadi = tex - 20 'Se calcula los minutos adicionales gastados por el usuario
End If
'Se define el primer condicional, el cual evaluara las condiciones si está en el plan familiar
If (tipo = "Familiar") Then
menadi = tex - 30 'Se calcula los minutos adicionales gastados por el usuario
End If
'Sabiendo que cuando los mensajes adicionales (menaadi) sean igual a 0, el usuario uso el limite
'exacto y que cuando menadi es negativo al usuario le sobraron minutos, se pregunta:
If (menadi > 0) Then
valor = menadi * 370 'se agrega al valor de la factura el cargo adicional
End If
'Asignamos el valor que retornara la función cuando sea llamada
recargomensajes = valor
End Function
'Se crea la función que recibe como parámetros el tipo de plan, los minutos y mensajes gastados
Function miplan(ByVal tipo As String, ByVal min, tex As Double) As Double
'Se define la variable factura para realizar el calculo
Dim factura As Double
'Se define el primer condicional, el cual evaluara las condiciones si está en el plan ideal
Universidad de Pamplona
Programación 1
La diferencia en estas soluciones radica en la aplicación de las buenas prácticas de la sentencia IF,
donde evidenciamos que la programación secuencial facilita el trabajo, además permite observar el
problema como pequeños problemas y con esto, mejorar la técnica de programación.
Para reforzar los conceptos aplicados en este taller se proponen los siguientes ejercicios como
método de refuerzo: