Está en la página 1de 36

ESTRUCTURAS

SELECTIVAS
• INSTALACION Y ESPECIFICACIONES
TECNICAS DEL PROGRAMA PSeInt.
• CONDICIONES SIMPLES Y ANIDADAS.
• SENTENCIAS CASE.
• CICLOS REPETITIVOS.
PSeInt
Es una herramienta para comprender la algoritmia computacional mediante un
simple e intuitivo pseudolenguaje en español (complementado con un editor de
diagramas de flujo).

PSeInt es un software gratuito: http://pseint.sourceforge.net


Para las configuraciones iniciales de PSeInt:
https://www.youtube.com/watch?v=kBVYgpxWgWw
PANTALLA DE INICIO
PSeInt ESTRUCTURA SECUENCIAL
PSeInt TAREA PLATAFORMA MOODLE

EJEMPLO 1:
Crear un algoritmo en PseInt (pseudocódigo, diagrama de flujo y Diagrama NS)
que muestre la suma, resta y multiplicación de dos números enteros.
PSeInt TAREA PLATAFORMA MOODLE
EJEMPLO 2:

Elabore un programa en PseInt que realice la conversión de cm. A pulgadas.


1Cm=0.393701 pulgadas.

Variables:
Centimetros: Tomará el valor en centímetros
Pulgadas: Tomará el valor convertido en pulgadas

Tipo: Real
PSeInt TAREA PLATAFORMA MOODLE
EJEMPLO 3:
Crear un programa que solicite el precio de un artículo y devuelva el precio al cual
lo obtendrá el cliente después de aplicarle un 15% de impuesto.

Variables:
Precio: Almacena el precio del producto
PrecioVenta: Almacena el precio después de aplicarle el 15%
Impuesto: Almacena el 15% del precio original

Tipo: Real (parte entera y parte decimal)


PSeInt TAREA PLATAFORMA MOODLE
EJEMPLO 4:
Crear el pseudocódigo y diagrama de flujo de un programa que solicite cuatro notas
parciales y devuelva como resultado el promedio.

Variables:
IParcial: Recoge la nota del primer parcial
IIParcial: Tomará la nota del segundo parcial introducido por el usuario
IIIParcial: Recoge el tercer parcial
IVParcial: Recoge el cuarto parcial
Promedio: Tomará el promedio de las cuatro notas parciales

Tipo: Real
PSeInt TAREA PLATAFORMA MOODLE

EJEMPLO 5:
Crear el pseudocódigo y diagrama de flujo para un programa que solicite tres números de
cualesquiera (enteros o decimales) y devuelva como salida la suma de los mismos.

Variables:
Numero1: Almacena el primer numero a sumar
Numero2: Almacena el segundo numero a sumar
Numero3: Almacena el tercer numero a sumar
Resultado: Tomará la suma de Numero1+Numero2+Numero3

Tipo: Real
PSeInt TAREA PLATAFORMA MOODLE
EJEMPLO 6:
En un hospital existen tres áreas: Pediatría, Banco de sangre y medicina general. El
presupuesto anual del hospital se reparte conforme a la siguiente tabla:
Pediatría = 40%
Banco de sangre = 30%
Medicina general = 30%
Obtener la cantidad de dinero que recibirá cada área, para cualquier monto presupuestal.

Variables:
PresupuestoGeneral = Recoge el presupuesto general
Pediatria = Tomará el valor de pediatría
BancoSangre = Representa el valor del banco de sangre
MedicinaGeneral = Representa el valor de medicina general
ESTRUCTURA SECUENCIAL
Es aquella en la que una acción (instrucción) sigue a otra en secuencia.

Las tareas se suceden de tal modo que la salida de una es la entrada de la


siguiente y así sucesivamente hasta el final del proceso.

La estructura secuencial tiene una entrada y una salida.


ESTRUCTURA SECUENCIAL
EJEMPLO:

Desarrolle el pseudocódigo, diagrama de flujo y diagrama N-S de un algoritmo


que calcule la suma y producto de dos números.

Análisis:
La Suma Sum de dos números es Sum = Num1 + Num2.
El producto Prod = Num1 * Num2.
ESTRUCTURA SECUENCIAL
Pseudocódigo:
Inicio
leer (Num1)
leer (Num2)
Sum ← Num1 + Num2
Prod ← Num1 * Num2
Escribir (Sum, Prod)
Fin

Algoritmo SumaProductoDosNum
Definir Sum,Prod,Num1,Num2 Como Entero;
Escribir 'Ingrese el Primer Número:';
Leer Num1;
Escribir 'Ingrese el Segundo Número:';
Leer Num2;
Sum <- Num1+Num2;
Prod <- Num1*Num2;
Escribir 'La suma de los dos números es: ',Sum;
Escribir 'El producto de los dos números es:
',Prod;
FinAlgoritmo
ESTRUCTURA SECUENCIAL
OTRO EJEMPLO:

Desarrolle el pseudocódigo, diagrama de flujo y diagrama N-S de un algoritmo


que calcule el salario neto de un trabajador en función del número de horas
trabajadas, precio de la hora de trabajo y el cálculo del impuesto en base a un
20%.
ESTRUCTURA SECUENCIAL
Pseudocódigo:
Inicio
leer (Nombre)
leer (HorasTrabajadas)
leer (PrecioHora)
SalarioBruto ← HorasTrabajadas * PrecioHora
Impuesto ← 0.20 * SalarioBruto
SalariioNeto ← SalarioBruto - Impuesto
Escribir (Nombre, SalarioBruto, SalarioNeto)
Fin

Algoritmo CalculoSalarioNeto
Definir Nombre Como Caracter;
Definir HorasTrabajadas, PrecioHora,
SalarioBruto, Impuesto, SalarioNeto Como Real;
Escribir 'Ingrese su nombre: ';
Leer Nombre;
Escribir 'Ingrese las horas trabajadas: ';
Leer HorasTrabajadas;
Escribir 'Ingrese el precio por hora trabajada: ';
Leer PrecioHora;
SalarioBruto = HorasTrabajadas * PrecioHora;
Impuesto = 0.20 * SalarioBruto;
SalarioNeto = SalarioBruto - Impuesto;
Escribir 'Nombre del empleado: ', Nombre;
Escribir 'El salario bruto es: ', SalarioBruto;
Escribir 'El impuesto es: ', Impuesto;
Escribir 'El Salario neto es: ', SalarioNeto;
FinAlgoritmo
ESTRUCTURAS SELECTIVAS
Es cuando existen un número de posibles alternativas resultantes de la
evaluación de una determinada condición.

Se utilizan para tomar decisiones lógicas, de ahí se denominan también


estructuras de decisión o alternativas.

En las estructuras selectivas se evalúa una condición y en función del resultado


de la misma se realiza una opción u otra.

Las condiciones se especifican usando expresiones lógicas.


ESTRUCTURAS SELECTIVAS
La representación de una estructura selectiva se hace con palabras en
pseudocódigo (if, then, else o bien en español si, entonces, si_no), con una
figura geométrica en forma de rombo o bien con un triángulo en el interior de
una caja rectangular.

Las estructuras selectivas o alternativas pueden ser:


• Simples,
• Dobles,
• Múltiples.
ALTERNATIVA SIMPLE (SI-ENTONCES / IF-THEN)
Ejecuta una determinada acción cuando se cumple una determinada condición.

La selección si - entonces evalúa la condición y :

• Si la condición es verdadera, entonces ejecuta la acción o acciones.


• Si la condición es falsa, entonces no hace nada.
ALTERNATIVA SIMPLE “si/entonces (if/then)”

Las estructuras condicionales simples se les conocen como “Tomas de decisión”.


F
Estas tomas de decisión tienen la siguiente forma: Condición

Si <condición> entonces V
Acción(es)
Fin si Acciones
ALTERNATIVA SIMPLE “si/entonces (if/then)”
Donde:

Condición: Representa la condición que se debe cumplir para ejecutar las


acciones.

Acciones: Representa la acción o acciones que se deben ejecutar en si la condición


da como resultado verdadero.
ALTERNATIVA SIMPLE “si/entonces (if/then)”
EJEMPLO 1:

Se desea calcular el importe de la venta de un determinado artículo, tomando en cuenta que al


comprar de 10 o más unidades del mismo, el descuento es de un 10%. Crear pseudocódigo y
diagrama de flujo.

Variables:
Cantidad: Representa la cantidad de artículos
Precio: Representa el precio del artículo
Descuento: Representa el descuento
Impuesto: Representa el impuesto
Total: Representa el subtotal
TotalPagar: Representa el total a pagar

Tipo: Real
ALTERNATIVA DOBLE “si - entonces – sino / (if- then - else)”

Son estructuras lógicas que permiten


controlar la ejecución de varias acciones y
se utilizan cuando se tienen dos opciones,
se debe ejecutar una o la otra, no ambas a
la vez.
ALTERNATIVA DOBLE “si - entonces – sino / (if- then - else)”

Ejemplo:

Tomar como dato de entrada el promedio de una nota para un alumno y


determinar si el alumno Aprobó o Reprobó la clase. Para aprobar la clase se
necesita una nota mayor o igual a 70.
ALTERNATIVA DOBLE “si - entonces – sino / (if- then - else)”
Otro Ejemplo:
Se desea obtener la nómina semanal (salario neto) de los empleados de una empresa cuyo
trabajo se paga por horas y del modo siguiente:

• las horas inferiores o iguales a 35 horas (normales) se pagan a un costo determinado que se
debe introducir por teclado al igual que el número de horas trabajadas y el nombre del
trabajador.
• Las horas superiores a 35 se pagarán como extras a un promedio de 1,5 horas normales.
• Los impuestos a deducir a los trabajadores varían en función de su sueldo mensual:

— sueldo <= 2.000, libre de impuestos,


— los siguientes 220 lempiras al 20 por 100,
— el resto, al 30 por 100.
ALTERNATIVA DOBLE “si - entonces – sino / (if- then - else)”
Algoritmo narrado en Español:

1. Inicio.
2. Declarar las variables
3. Cadena: Nombre
4. Real: Horas, Impuesto, SueldoBruto, SueldoNeto, CostoHora
5. Leer nombre, horas trabajadas, CostoHora.
6. Verificar si horas trabajadas <= 35, en cuyo caso
7. salario_bruto = horas * CostoHora; en caso contrario,
8. salario_bruto = 35 * CostoHora+ (horas - 35) * 1.5 * CostoHora.
9. Cálculo de impuestos
10. Si salario_bruto <= 2.000, entonces
11. impuestos = 0
12. si salario_bruto <= 2.220 entonces
13. impuestos = (salario_bruto - 2.000) * 0.20
14. si salario_bruto > 2.220 entonces
15. impuestos = (salario_bruto - 2.220) * 0.30 + (220 * 0.20)
16. Cálculo del salario_neto
17. salario_neto = salario_bruto - impuestos.
18. Fin.
ALTERNATIVA DOBLE “si - entonces – sino / (if- then - else)”
Algoritmo en Pseudocódigo :
algoritmo Nómina
cadena : nombre
real : horas, impuestos, sbruto, sneto, CostoHora
inicio
leer(nombre, horas, CostoHora)
si horas <= 35 entonces
sbruto ← horas * CostoHora
si_no
sbruto ← 35 * CostoHora + (horas - 35) * 1.5 * CostoHora
fin_si
si sbruto <= 2.000 entonces
impuestos ← 0
si_no
si (sbruto > 2.000) y (sbruto <= 2.220) entonces
impuestos ← (sbruto - 2.000) * 0.20
si_no
impuestos ← (220 * 0.30) + (sbruto - 2.220)
fin_si
fin_si
sneto ← sbruto - impuestos
escribir(nombre, sbruto, impuestos, sneto)
fin
ALTERNATIVA MULTIPLE “según sea, caso de / case”

Con frecuencia en la práctica es necesario que existan más de dos


elecciones posibles.
La estructura de decisión múltiple evaluará una expresión que podrá
tomar n valores distintos, 1, 2, 3, 4, ..., n.
Según que elija uno de estos valores en la condición, se realizará una
de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un
determinado camino entre los n posibles.
ALTERNATIVA MULTIPLE “según sea, caso de / case”
Sintaxis:
SENTENCIA CASE
Con la estructura de control CASE podemos evaluar una variable y realizar
acciones dependiendo del valor de esta.

La diferencia con el IF consiste en que el número de posibilidades de la


evaluación de esta variable no tiene por que ser si o no, pudiendo hacer cosas
para un número indeterminado de valores.

Se utiliza en estructuras que establecen una selección entre múltiples opciones.


SENTENCIA CASE
Aunque el IF resulta muy útil para resolver una gran cantidad de problemas y
situaciones, la sentencia CASE representa una mejor opción cuando se quiere
manipular una gran cantidad de opciones ya que permite ver de forma más clara
todas las opciones, además que es ideal para controlar la entrada de argumentos
y opciones en los scripts.
SENTENCIA CASE
La sintaxis es la siguiente:

SELECT CASE (variable)


CASE (valor1):
(acción para caso valor1)
CASE (valor2):
(acción para caso valor2)
CASE (valor3):
(acción para caso valor3)
CASE ELSE:
(acción en caso de que no se cumpla ningún anterior caso)
END SELECT
SENTENCIA CASE
Ejemplo: EL programa lo primero que hace es solicitar un número y luego informa del día de la semana con el que corresponde.
Si el número no es del uno al siete informa de ello también.

dim dia
dia = inputbox ("dime un dia de la semana en numero (1 al 7)")
SELECT CASE dia
CASE 1:
msgbox("El dia es LUNES")
CASE 2:
msgbox("El dia es MARTES")
CASE 3:
msgbox("El dia es MIERCOLES")
CASE 4:
msgbox("El dia es JUEVES")
CASE 5:
msgbox("El dia es VIERNES")
CASE 6:
msgbox("El dia es SABADO")
CASE 7:
msgbox("El dia es DOMINGO")
CASE ELSE:
msgbox("Tiene que ser un dia de la semana en número, del 1 al 7")
END SELECT
SENTENCIA CASE
EJEMPLO 1:
Se desea diseñar un algoritmo que escriba los nombres de los días de la semana
en función del valor de una variable DIA introducida por teclado.

Análisis:
Los días de la semana son 7; por consiguiente, el rango de valores de DIA será 1
.. 7, y en caso de que DIA tome un valor fuera de este rango se deberá producir un
mensaje de error advirtiendo la situación anómala.
CONDICIONES ANIDADAS
La instrucción SI se utiliza para diseñar estructuras de selección que contengan
más de dos alternativas.

Una sentencia SI entonces puede contener otra estructura SI entonces, y esta a


su vez puede contener otra, y así sucesivamente.

Al mismo tiempo, dentro de cada estructura pueden existir diferentes acciones.

Las estructuras SI dentro de otras reciben el nombre de anidadas.


CONDICIONES ANIDADAS
SINTAXIS:

Si <condición> entonces
Si <condición2> entonces
Si <condición3> entonces
.
.
.
<Instrucciones>
finsi
finsi
Else
<Instrucciones>
finsi
CONDICIONES ANIDADAS
EJEMPLO 1:
Escribir el algoritmo de un programa que permita introducir un número entre 1 y 12 y
devuelva como resultado el trimestre al cual corresponde.

Análisis:
Variable: Mes Tipo: entero

Si el valor es: mensaje a mostrar


1, 2, 3 “Primer Trimestre”
4, 5, 6 “Segundo Trimestre”
7, 8, 9 “Tercer Trimestre”
10, 11, 12 “Cuarto Trimestre”
Otro número Error: Valor fuera de rango
ESTRUCTURAS
SELECTIVAS
GRACIAS POR SU ATENCION…..

También podría gustarte