50% encontró este documento útil (4 votos)
3K vistas15 páginas

Algoritmos de Selección y Estructuras Iterativas

Este documento presenta dos ejercicios de estructuras selectivas y uno de estructuras iterativas para diseñar algoritmos. El primer ejercicio modela un programa para calcular los porcentajes de votos obtenidos por dos candidatos y las abstenciones en una elección. El segundo ejercicio calcula el salario de una persona dependiendo del departamento donde trabaja. El tercer ejercicio diseña un algoritmo para aplicar descuentos en una compra en función del monto total.

Cargado por

Skipper Gracias
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
50% encontró este documento útil (4 votos)
3K vistas15 páginas

Algoritmos de Selección y Estructuras Iterativas

Este documento presenta dos ejercicios de estructuras selectivas y uno de estructuras iterativas para diseñar algoritmos. El primer ejercicio modela un programa para calcular los porcentajes de votos obtenidos por dos candidatos y las abstenciones en una elección. El segundo ejercicio calcula el salario de una persona dependiendo del departamento donde trabaja. El tercer ejercicio diseña un algoritmo para aplicar descuentos en una compra en función del monto total.

Cargado por

Skipper Gracias
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD DE EL SALVADOR 

FACULTAD DE CIENCIAS ECONÓMICAS


DEPARTAMENTO DE CONTADURÍA PÚBLICA

Guía N° 4 “Diseño de algoritmos: Estructuras de selección e Iterativas”

Docente: Ing. Alam Balmore Aviles Muñoz

Materia: Computación

Grupo: Teórico 17

Unidad: 02

Estudiante: Josué Alexis Garcia Galdámez GG20005

Ciclo II
Ciudad universitaria, 03 de mayo de 2020
EJERCICIOS DE ESTRUCTURAS SELECTIVAS:

1. Dos estudiantes se postularon para competir en las elecciones universitarias. Diseñe una
solución que lea la cantidad de votos que cada candidato recibió, así como el número de
abstenciones. El programa deberá calcular el porcentaje de votos que obtuvo cada
candidato y el porcentaje de abstenciones y determinará quién fue el ganador.

PLANTEAMIENTO DEL PROBLEMA.


ENTRADA DE DATOS
SALIDA DE DATOS

P
Votos 1 Porcentaje 1
Votos 2 Porcentaje 2
Porcentaje abs

Análisis del Problema:

Variables Salida:

Nombre Tipo Descripción


Porcentaje 1 Real Cantidad de los primeros votos por el 100%
Porcentaje 2 Real Cantidad de los segundo Votos por el 100%
Porcentaje abs Real Y esto fueron los que se abstuvieron de dar su voto por el 100%

Variables Entrada:

Nombres Tipo Despcricion


Votos 1 Entero Cantidades de Votos1 que se digitan
Votos 2 Entero Cantidades de Votos 2 que se digitan

Proceso:
por1 = votos1 / (votos1 + votos2)
por2 = votos2 / (votos1 + votos2)
porabs = abste / (votos1 + votos2)
Pseudocódigo:
Algoritmo Estudiantes_que_se_postula

//1. Dos estudiantes se postularon para competir en las elecciones universitarias. Diseñe una

// solución que lea la cantidad de votos que cada candidato recibió, así como el número de

// abstenciones. El programa deberá calcular el porcentaje de votos que obtuvo cada

// candidato y el porcentaje de abstenciones y determinará quién fue el ganador.

Definir votos1, votos2 como entero


Definir abste como entero
Definir por1, por2, porabs como real

Imprimir "Digite la cantidad de votos candidato 1"


Leer votos1

Imprimir "Digite la cantidad de votos candidato 2"


Leer votos2

Imprimir "Digite la cantidad de votos abstenciones"


Leer abste

por1 = votos1 / (votos1 + votos2)


por2 = votos2 / (votos1 + votos2)
porabs = abste / (votos1 + votos2)

si votos1 > votos2 entonces


Imprimir "El ganador es el candidado 1 con un porcentaje de ", por1*100
SiNo
Imprimir "El ganador es el candidado 2 con un porcentaje de ", por2*100
FinSi

Imprimir "El porcentaje de abstenciones es ", porabs*100


FinAlgoritmo
Flujograma:
2. Una persona quiere saber el salario que gana mensualmente, el pago base por quincena es
de $3000.00 el cual cambiará dependiendo del departamento en que se trabaja, los
departamentos pueden ser: Ahuachapán, San Miguel, Morazán, Chalatenango y La Unión;
en caso de no ser ninguna de las localidades planteadas se pintará “salario indefinido”
mostrando solo el salario base. Si la localidad es Ahuachapán se aumentará un 20% en
cada quincena, para San Miguel un 5%, Morazán un 10%, Chalatenango un 15% y La Unión
se le aumentan $ 200.00.
PLANTEAMIENTO DEL PROBLEMA.

ENTRADA DE DATOS
SALIDA DE DATOS

Departamentos Salario 1
Salario 2
Salario 3
Salario 4
Salario 5

Análisis del Problema:

Variables Salida:

Nombre Tipo Descripción


Salario 1 Real Se multiplica el salario por el porcentaje y se suma a la vez
Salario 2 Real Se multiplica el salario por el porcentaje y se suma de igual manera
Salario 3 Real Luego de multiplicar el salario por el porcentaje se suma
Salario 4 Real Se sigue el mismo proceso para encontrar cuanto ganara
Salario 5 Real Ya teniendo los valores multiplica por porciento y se suma

Variables Entrada:

Nombres Tipo Despcricion


Departamento Entero Se escribe cada uno de los departamento

Proceso:
El salario seria: $(3000.00*0.20+3000.00)
El salario seria: $(3000.00*0.05+3000.00)
El salario seria: $(3000.00*0.10+3000.00)
El salario seria: $(3000.00*0.15+3000.00)
El salario seria: $(3000.00+200.00)
Pseudocódigo:
Algoritmo Departamento
Definir dep Como Entero;
Escribir "Ingrese el departamento en que se trabaja: "
Escribir "para Ahuachapan marque 1: "
Escribir "para San Miguel marque 2: "
Escribir "para Morazan marque 3: "
Escribir "para Chalatenango marque 4: "
Escribir "para La Union marque 5: "
Leer dep;
Segun dep Hacer
1: Escribir "El salario seria: $",(3000.00*0.20+3000.00);
2: Escribir "El salario seria: $",(3000.00*0.05+3000.00);
3: Escribir "El salario seria: $",(3000.00*0.10+3000.00);
4: Escribir "El salario seria: $",(3000.00*0.15+3000.00);
5: Escribir "El salario seria: $",(3000.00+200.00);
De Otro Modo:
Escribir "salario indefinido";

FinSegun
FinAlgoritmo
Flujograma:
Estructuras repetitivas.

1. Escribir un programa que permita realizar descuentos en un comercio, en función del


total de compras realizadas por cada cliente. Para realizar dichos descuentos, se deben
leer los importes de cada compra parcial de un cliente hasta que un importe sea igual a
cero; posteriormente se escribirá el importe total a pagar teniendo en cuenta que se
pueden efectuar los siguientes descuentos:

Si el importe total de la compra está entre $50 y $120, el descuento es del 15%.

Si el importe total de la compra es mayor de $120 el descuento es del 20%.

La lectura de clientes finaliza tras responder al mensaje "¿Más clientes (S/N) ?, mostrando
al final la suma total de todos los importes cobrados.

PLANTEAMIENTO DEL PROBLEMA.


ENTRADA DE DATOS
SALIDA DE DATOS

Repetir Cantidad Total


Descuento

Análisis del Problema:

Variables Salida:

Nombre Tipo Descripción


Cantidad Total Real Se debe hacer el proceso de la cantidad mas total de lo que vale
Descuento - Total apagar por el porcentaje que descontar

Variables Entrada:

Nombres Tipo Despcricion


Repetir Carácter Repetición de comprar cantidad y valor

Proceso:

TOTAL <- CAN+TOTAL

'SU TOTAL A PAGAR ES DE $',TOTAL

TOTAL>=50 Y TOTAL<=120 Entonces

DES <- TOTAL-(TOTAL*0.15)


SU TOTAL A PAGAR ES DE $',DES

DES <- TOTAL-(TOTAL*0.20)

'SU TOTAL A PAGAR ES DE $',DES

Pseudocódigo:
Algoritmo DESCUENTOS

Definir R Como Caracter // R=REPETIR

Definir CAN,TOTAL Como Real // CAN=CANTIDAD

Repetir

CAN <- 0 //INICIAMOS CAN EN EL VALOR CERO AL IGUAL QUE LA VARIABLE TOTAL

TOTAL <- 0

Repetir

Escribir 'INGRESE EL PRECIO DEL PRODUCTO'

Leer CAN

Si CAN<0 Entonces

Escribir 'PRECIO INGRESADO ERRONEO'

SiNo

// PROCESO//

TOTAL <- CAN+TOTAL

FinSi

Hasta Que CAN=0

Si TOTAL<50 Entonces

Escribir 'SU TOTAL A PAGAR ES DE $',TOTAL

SiNo

Si TOTAL>=50 Y TOTAL<=120 Entonces

DES <- TOTAL-(TOTAL*0.15)

Escribir 'SU TOTAL A PAGAR ES DE $',DES

SiNo

DES <- TOTAL-(TOTAL*0.20)

Escribir 'SU TOTAL A PAGAR ES DE $',DES


FinSi

FinSi

Escribir '¿MAS CLIENTES S/N?'

Leer R

Hasta Que R='N'

FinAlgoritmo

Flujograma:
2. La empresa “Innovaciones Contables”, posee dos tipos de empleados, siendo estos
administrativos y operativos, el salario que poseen es de $500 y $350 respectivamente. Se
desea crear una solución para obtener el monto en concepto de horas extras, si el
empleado es administrativo y el número de horas extras es menor a 25 el precio por hora
extra es de $2.50, caso contrario cada hora extra se pagará a $2.00 Si el empleado es
operativo y el número de horas extra es mayor a 25 el precio por hora extra es de $2.75
caso contrario el pago por cada hora extra será de $2.50.

A). La solución a diseñar debe mostrar la siguiente información.

a. Salario Inicial : $

b. Cantidad de horas extras reportada: $

c. Pago en concepto de horas extras : $

d. Salario total: $

B). La solución debe procesar una cantidad de empleados solicitada y calcular la siguiente

información:

a. Cantidad de empleados administrativos.

b. Cantidad de empleados operativos.

c. Total de horas extras reportadas sin importar el tipo de empleado.

PLANTEAMIENTO DEL PROBLEMA.


ENTRADA DE DATOS
SALIDA DE DATOS

- Salario administrativo - Salario inicial


- Salario operario - Cantidad de horas extras
- Pago de horas extra según horas - Pago de horas extra

- Salario Total
- Cantidad de empleados Adm.
- Cantidad de empleados Op.
ANALISIS DEL PROBLEMA
Variables de salida:

NOMBRE TIP DESCRIPCION


O
Salario inicial Real Cantidad que cada empleado la empresa le paga.
Cantidad de horas extras Real Cantidad de horas extras que cada empleado ha hecho.
Pago de horas extras Real Cantidad a pagar según el número de horas extras
realizadas
Salario Total Real Monto de horas extras más el salario inicial del
trabajador
Cantidad de empleados Real Cantidad de empleados Administrativos que ha sido
Administrativos procesados
Cantidad de empleados Real Cantidad de empleados operarios que ha sido procesados
Operarios

Datos de entrada:

NOMBRE TIPO DESCRIPCION


Salario Administrativo Real Cantidad de dinero depositado en el banco
Salario Operario Real Porcentaje de interés a aplicar al dinero a depositar
Pago de horas extras según horas
Administrativos Operarios
“x” <25= $2.50 “x” >25= $2.75
Real Pago según horas extras trabajadas
“x” >25= $2.00 “x” <25= $2.50

RESTRICCIONES:

Las horas extras deben ser > a 0

CONSTANTES

SALARIO ADMINISTRATIVO: $500

SALARIO OPERATIVO: $350


Pseudocódigo:
Algoritmo SalarioHoras

Definir
Salario,ValorHoraExtra,HorasExtras,TotaValorlHorasExtras,SalarioDia,TipoEmpleado Como Real

Definir
SalarioHora,NumeroEmpleados,TotalAdministrativos,TotalOperativos,TotalHorasExtras Como Real

// declarar Varibles

NumeroEmpleados<-1

Para i = 1 hasta NumeroEmpleados

Salario = 500

ValorHoraExtra = 2.50

HorasExtras = 7

TipoEmpleado = 1

TotaValorlHorasExtras = 17.5

SalarioDia = 10.00

SalarioHora = 1.25

TotalHorasExtras = TotalHorasExtras + HiorasExtras

Si TipoEmpleado = 1

Salario = 500

SI HorasExtras < 25

ValorHoraExtra = 2.5

SiNo

ValorHoraExtra = 2

FinSi

TotalAdministrativos = TotalAdministrativos + 1

SiNo

Salario = 350
Si HorasExtras > 25

ValorHoraExtra = 2.75

SiNo

ValorHoraExtra = 2.5

FinSi

TotalOperativos = TotalOperativos + 1

FinSi

SalarioDia = Salario / 30

SalarioHora = SalarioDia / 8

TotaValorlHorasExtras = SalarioHora * ValorHoraExtra

Imprimir "Empleado: ",i

Imprimir "Salario Inicial: ", Salario

Imprimir "Cantidad de horas extras reportada: ", HorasExtras

Imprimir "Pago en concepto de horas extras: ", TotaValorlHorasExtras

FinPara

Imprimir "Cantidad de empleados administrativos: ", TotalAdministrativos

Imprimir "Cantidad de empleados operativos: ", TotalOperativos

Imprimir "Total de horas extras reportadas sin importar el tipo de empleado: ",
TotalHorasExtras

FinAlgoritmo

Flujograma:

También podría gustarte