Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Análisis de algoritmos.
Ejercicios de algoritmos,
Lenguaje natural
Pseudocódigo
Diagramas de flujo
Diagrama de flujo.
b b2 4ac b b 2 4ac
x1 y x2
2a 2a
Para que la ecuación de segundo grado tenga solución es preciso que el discriminante sea mayor o igual que
0.
El discriminante de una ecuación de segundo grado es:
D b2 4ac
Por consiguiente,
b b
Si D = 0, entonces x1 y x2 , por lo tanto ambas raíces son iguales
2a 2a
Si D < 0, entonces ambas raíces no tienen solución real.
Pseudocódigo.
Inicio
variables,
reales: a, b, c, D
leer a, b, c
D←(b*b)–4*a*c
si D < 0 entonces
imprimir “no tiene raíces reales”
si D = 0 entonces
imprimir -B/2ª
si no
X1 ← (-B + D) / 2A
X2 ← (-B - D) / 2A
Imprimir X1 , X2
Fin_si
Fin
Ejemplo.
Se desea obtener la nomina 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 se pagan a una tarifa determinada que se debe introducir
por teclado al igual que el número de horas y el nombre del trabajador.
Las horas superiores a 35 se pagarán como extras a un predio de 1.5 horas normales,
Los impuestos a deducir a los trabajadores varían en función de su salario mensual,
o Salario menor o igual a 20.000, libre de impuestos
o Los siguientes 15.000, al 20 por 100
o El resto, al 30 por 100
Análisis,
1. Inicio
2. Leer nombre, horas trabajadas, tarifa horaria.
3. Verificar si horas trabajadas <= 35, en cuyo caso
a. Salario bruto = horas trabajadas * tarifa horaria,
b. En caso contrario, Salario bruto = 35 * horas trabajadas + ( ( horas trabajadas – 35 ) * 1.5 *
tarifa )
4. Cálculo de impuestos
a. Si salario bruto <= 20000, entonces impuestos = 0
b. Si salario bruto > 20000 y <= 35000 , entonces impuestos = ( ( salario bruto – 20000 ) *
0.20
c. Si salario bruto > 35000, entonces impuestos = ( ( 15000 * 0.20) + ((salario – 35000) * 0.30
))
Pseudocódigo
Inicio
Declaración de variables
String: nombre
reales: horas, tarifa, salarioBruto, salarioNeto, impuestos
Leer nombre, horas, tarifa
si ( horas <= 35 ) entonces
salarioBruto ← horas * tarifa
si_no
salarioBruto ← ( 35 * tarifa ) + ( horas -35) * 1.5 * tarifa
fin_si
si salarioBruto <= 20000 entonces
impuestos ← 0
si_no
si ( salarioBruto > 20000 ) y ( salarioBruto <= 35000 ) entonces
impuestos ← ( salarioBruto – 20000 ) * 0.20
si_no
impuestos
fin_si
fin_si
salarioNeto ← salarioBruto – impuestos
imprimir nombre, horas, tarifa, salarioBruto, impuestos, salarioNeto
fin