Sei sulla pagina 1di 31

INGENIERIA INDUSTRIAL.

“ALGORITMOS Y LENGUAJE DE LA PROGRAMACIÓN”.

“DIAGRAMAS DE FLUJO”.

FECHA: 29-MAYO-2018.
DIAGRAMA DE FLUJO.
1. Construir un diagrama de flujo que lea los datos enteros A, B, C, D, y los imprima
de manera inversa.

INICIO

A, B, C, D

D, C, B, A

FIN

2. Hacer un diagrama que capture un número y lo imprima.

INICIO

“Captura un numero:”, a

“El número que tu capturaste es:”, a

FIN
3. Hacer un diagrama de flujo que capture 2 números y los compare y diga cuál es
mayor.

INICIO

a, b

“Dame 1er número:”, a

“Dame 1er número:”, b

No Si
a=b

Si “son iguales”
a>b

No a, “es mayor que”, b

b, “es mayor que”, a

FIN
4. Hacer un diagrama que sus 2 números y nos muestre el resultado.

INICIO

a, b, suma

“Dame 1er número:”, a

“Dame 2do número:”, b

Suma= a + b

“El resultado de:”, a, “+”, b,


“=”, suma

FIN
5. Hacer un algoritmo donde se introduzca 2 números y se imprima su suma, resta,
multiplicación, división entera y división real.

INICIO

a, b, suma, resta, mult, div, división

“Dame 1er número:”, a

“Dame 2do número:”, b

suma= a + b

resta= a - b

mult= a * b

div= a div b

división= a / b

“El resultado de;”, a, “+”, b. “=”, suma

“El resultado de;”, a, “-”, b. “=”, resta

“El resultado de;”, a, “*”, b. “=”, mult

“El resultado de;”, a, “div”, b. “=”, div

“El resultado de;”, a, “/”, b. “=”, división

FIN
6. Hacer un diagrama de flujo tal que dado los datos enteros A, B escriba el
(𝐴+𝐵)2
resultado de la siguiente expresión 3
.

INICIO

a, b, c, d, e

“Dame 1er valor:”, a

“Dame 2do valor:”, b

c= a + b

d= c^2

e= d/3

“El resultado es:”, e

FIN
7. Haz un diagrama de flujo donde captures 10 calificaciones de un alumno, saque
su promedio y lo imprima.

INICIO

a, b, c, d, e, f, g, h, i, j, prom

“Dame 1er calif:”, a

“Dame 2da calif:”, b

“Dame 3er calif:”, c

“Dame 4ta calif:”, d

“Dame 5ta calif:”, e


“Dame 4ta calif:”, d
“Dame 6ta calif:”, f

“Dame 7ma calif:”, g

“Dame 8va calif:”, h

“Dame 9na calif:”, i

“Dame 10ma calif:”, j

Prom= a+b+c+d+e+f+g+h+i+j/10

“El promedio del alumno es:”, prom

FIN
8. Haz un diagrama de flujo donde captures un número e imprimas la 2da. Y 3ra.
potencia de ese número, así como la raíz cuadrada.

INICIO

a, b, c, d

“Dame un numero:”, a

b= a^2

“El resultado de:”, a, “^”, 2, “=”, b

c= a^3

“El resultado de:”, a, “^”, 3, “=”, c

d= a^0.5

“El resultado de:”, a, “^”, 0.5, “=”, d

FIN
9. Haz un diagrama de flujo donde captures la edad de una persona e imprimas su
edad en días, horas, minutos y segundos. (365).

INICIO

E, day, hour, minute, second

“Edad”, E

day= E*365

hour= day*24

minute= hour*60

second= minute*60

“Edad en día es”, day


“Edad”, E
“Edad en horas es”, hour
“Edad”, E

“Edad en minutos es”, minute


“Edad”, E

“Edad en segundos es”, second


“Edad”, E

FIN
10. Haz un diagrama de flujo donde captures el precio de un artículo, haga el
descuento de ese artículo (20%), y capture la cantidad e imprima el costo del
artículo y cambio al cliente.

INICIO

Precio, desc, pago, cambio

“ingrese el precio del artículo:”, precio

“ingrese el pago del artículo:”, pago

desc= precio*0.2

costo= precio-desc

cambio= pago- costo

“El descuento del producto es:”, precio, “*”,


0.2, “=”, desc

“El costo del producto es:”, precio, “-”, costo,


“=”, costo

“El cambio del producto es:”, pago, “-”,


costo, “=”, cambio

FIN
11. Haz un diagrama de flujo que capture la base y altura de un rectángulo, calcule
el área y perímetro del mismo y los imprima.

INICIO

base, altura, área, perímetro

“Dame la base del rectángulo:”, base

“Dame la altura del rectángulo:”, altura

área= base*altura

“El área del rectángulo:”, área

Perímetro= (2*base)+ (2*altura)

“El perímetro del rectángulo:”, perímetro

FIN
12. Haz un diagrama de flujo que deduzca si un número es positivo o negativo.

INICIO

“Dame el valor:”, a

No Si
a>0
Si “positivo”
a<0

“negativo”
No

“Es cero”

FIN
13. Construir un diagrama de flujo que dado el costo de un artículo vendido y la
cantidad de dinero entregado por el cliente, calcule e imprima el cambio que se
debe entregar al mismo (considere si paga una cantidad menor a lo que se debe
pagar).
INICIO

X, Y, Z, A

“El valor del producto es:”, X

“El valor del pago es:”, Y

Si No
X=Y
0

“No hay cambio” Si No


X<Y

Z= Y-X A= X-Y

“El cambio es:”, Z “Falta pagar:”, A

FIN
14. Hacer un diagrama tomando en consideración la prioridad de operaciones de la
siguiente operación: X= 7*8(160 mod 3^3) div 5*13-28.

INICIO

a, b, c, d, e, f

“resolver:”, X= 7*8(160 mod 3^3) div 5*13-28

a=3^3

0
b= 160 mod a

c= b* 8

d= c* 7

e= d div 5

f= e* 13

g= f- 28

x= g

“El resultado es:”, x

FIN
DIAGRAMA DE FLUJO CON DECISIONES.
15. Dados tres números, determinar si la suma de una pareja de ellos es igual al 3er.
Numero si se cumple esta condición escribir “iguales”, en caso contrario escribir
“diferentes”.
INICIO

a, b, c

“Dame valor de a:”, a

“Dame valor de b:”, b

“Dame valor de c:”, c

a= b+c Si

NO

Si
b= a+c

NO
“Iguales”
Si
c= a+b

NO

“Diferente”

FIN
16. Calcule los salarios semanales de los empleados de una empresa, sabiendo que
esto se calcula en base a las horas semanales trabajadas y de acuerdo a su precio
especificado cada hora. Si se pasan de 40 horas semanales, las horas extras se
pagaran a razón de 1.5 veces l hora ordinaria.

INICIO

salario, horas, p. hora, salario neto, impuestos

“Cuantas horas trabajo:”, horas

“Cuanto se paga por hora:”, p. hora

NO Horas Si
<=40
Salario= (40*p.hora)+ (horas- Salario= horas*p. hora
40)*(1.5*p.hora)

1 “El salario del trabajador es:”,


salario

FIN
17. Al problema anterior, calcular el salario neto en función de la siguiente y que
imprima el salario neto, salario bruto y los impuestos:
a) Si el salario es menor de 51 dólares está libre de impuestos.
b) Si el salario es de 51 a 90 dólares tiene un impuesto del 25% sobre los
dólares que haya ganado más de 50 dólares.
c) Si el salario es más de 90 dólares se retienen 45% de los impuestos sobre
lo que haya ganado más de los 90 y el 25% de los 51 a 90 dólares.

No Salario Si
<=50
Impuesto= 0
Si Salario>50 No
and <=90
Impuestos= 0.25*(salario-
50)
Impuestos= (0.25*40)+
(salario-90)*0.45

Salario neto= salario- impuestos

“salario:”, salario

“impuestos:”, impuestos

“salario neto:”, salario neto

FIN
18. Las raíces reales de la expresión 𝑎𝑥 2 + 𝑏𝑥 + 𝑐 = 0, se obtiene a través de la
−𝑏±√𝑏2 −4𝑎𝑐
formula general 𝑥 = 2𝑎
. Hacer un diagrama de flujo para calcular las
raíces reales, tomando en cuenta que a no debe ser cero (acordarse de que la
discriminante no debe der negativa).

INICIO

a, b, c, d, e, f, X1, X2, discriminante

“Ingresa el valor de a:”, a

No Si
a= 0

“dame el valor de b:”, b

“dame el valor de c:”, c

discriminante= (b ^2)- (4* a* c)

No Si
discriminante
<0
“No se puede resolver”
d= discriminante ^ 0.5

e= -b + d

f= -b - d

X1= e / (2*a)

X2= f / (2*a)

“X1 es:”, X1
“X2 es:”, X2

FIN
19. Construya un diagrama de flujo que capture un numero entero y determine e
imprima si el número es positivo, negativo o cero y que también imprima si es
par o impar.

INICIO

a, b

“Ingresa un número:”, a

b= a mod 2

No Si
b=0
<<

“es impar” “es par”

No Si
a=0
<<

“es cero”
No Si
a>0
<<

“es positivo”

“es negativo”

FIN
20. En una tienda efectúan un descuento a los clientes dependiendo del monto de la
cuenta. El descuento se efectúa con base al siguiente criterio:
a) Si el monto es menor de $500 no hay descuento.
b) Si el monto está comprendido entre $500 y $1000 inclusive 5% de
descuento si el monto está entre $1000 y $7000 inclusive 11% de
descuento.
c) Si el monto está comprendido entre $7000 y $15000 inclusive 18%.
d) Si es mayor a $15000, 25%.

INICIO

cuenta, pagar

“El total de la cuenta es:”, cuenta

Si <<
No
Cuenta<=500

“pagar ”
Si <<
500>= cuenta<=1000

pagar= cuenta-
(cuenta*0.5)

No
<<
1000>= cuenta<=7000
Si

<< pagar= cuenta-


7000>= cuenta<=15000
No (cuenta*0.11)

Si
No Si
<<
Cuenta>=15000

pagar= cuenta- pagar= cuenta-


(cuenta*0.18) (cuenta*0.25)

“el total a pagar es:”, pagar

FIN
21. Dado como dato tres números reales, identifique cuál es el mayor.

INICIO

A, B, C

“dame el valor de a:”, A

“dame el valor de b:”, B

“dame el valor de c:”, C

No << A>C Si
A>B and

“A es el número mayor”
<< No
B>A and B>C

“C es el número mayor”
Si

“B es el número mayor”

FIN
22. El costo de las llamadas telefónicas internacionales depende de la zona
geográfica en la que se encuentra el país destino y del número de minutos
hablados. En la siguiente tabla se presenta el costo del minuto por
zona. A cada zona se le ha asociado una clave. Construya un diagrama de flujo
que le permita calcular el costo de la llamada dependiendo del tiempo
y zona geográfica.
CLAVE ZONA PRECIO
12 Norte América 2
15 Centro América 2.2
18 América del sur 4.5
19 Europa 3.5
23 Asia 6
25 África 6
29 Oceanía 5

INICIO

costo, clave, min

“ingresar la clave:”, clave

a=0
<<

12 18 19 23
25 29
costo= min*2
costo= min*4.5 costo= min*6 costo= min*5
15

costo= min*3.5
costo= min*2.2 costo= min*6

“El costo total de la llamada es:”, costo

FIN
23. En un hospital se ha hecho un estudio sobre los pacientes registrados durante los
últimos 10 años, con el objeto de hacer una aproximación de los costos de
internación por paciente. Se obtuvo un costo promedio diario según el tipo de
enfermedad que aqueja al paciente. Además se pudo determinar que en
promedio todos los pacientes con edad entre 14 y 22 años implican un costo
adicional del 10%. La siguiente tabla expresa los costos diarios, según el tipo de
enfermedad.
TIPO DE ENFERMEDAD COSTO/PACIENTE/DIA
1 25
2 16
3 20
4 32

INICIO

edad, pago, días, costo, enfermedad

“dame los días:”, días


24.
“dame la edad:”, edad

“ingrese enfermedad:”, enfermedad

No Si
14>=edad<=22
<<

<<
enfermedad enfermedad
<<

3 1 3
2 2
1 pago= (20*0.1)+20
pago= 25 pago= 20 4
4
pago= (16*0.1)+16
pago= 16 pago= 32
pago= (32*0.1)+32
pago= (25*0.1)+25

Costo= dias*pago

“El costo total es:”, costo

FIN
Construir un diagrama de flujo tal que dado que los saldos de 10 trabajadores de
la empresa. Obtenga el total de la nómina de la misma.

INICIO

s1, s2, s3, s4, s4, s5, s6, s7, s8, s9, s10, nomina

“dame sueldo del 1er. trabajador:”, s1


“dame sueldo del 2do. trabajador:”, s2
“dame sueldo del 3er. trabajador:”, s3
“dame sueldo del 4to. trabajador:”, s4
“dame sueldo del 5to. trabajador:”, s5
“dame sueldo del 6to. trabajador:”, s6
“dame sueldo del 7mo. trabajador:”, s7
“dame sueldo del 8vo. trabajador:”, s8
“dame sueldo del 9no. trabajador:”, s9
“dame sueldo del 10mo. trabajador:”, s10

nomina= s1+s2+s3+s4+s5+s6+s7+s8+s9+s10

“el total de la nomina es :”, nomina

FIN

INICIO

sueldo, nomina, i

nomina=0 i= 1

i
No
i<=10
<<
si
“dame sueldo del:”, i, “trabajador”, sueldo

nomina= nomina + sueldo

i
i= i+1

i
“el total de la nomina es:”, nomina

FIN
25. Construir un diagrama de flujo tal que dado como dato n números obtenga el
número de ceros que hay entre esos números.

INICIO

cuentaceros , N, i, num
nomina, i
cuentaceros=0 i= 1

i
“cuantos datos vas a capturar:”, N

No
i<=N
<<
Si
“dame el numero:”, num

No
num=0
<<
Si
cuentaceros= cuentaceros + 1

i= i+1

“total de ceros es:”, cuentaceros

FIN
26. Construir un diagrama de flujo que obtenga la suma de los gastos que hicimos en
el mes pasado, pero no sabemos cuántos fueron.

INICIO

gasto, sumagasto

gasto=0 sumagasto= 1

i
“dame gasto, si pones 0 es el fin:”, gasto

No
gasto
<< <> 0

Si

sumagasto= sumagasto + gasto

“gasto total del mes:”, sumagasto

FIN
27. Construya un diagrama de flujo tal que dado como datos 270 números obtenga
suma de los números impares y el promedio de los números pares.

INICIO

num, sumimpar, sumpar, contpar, prompar, divi

i=0 sumimpar=0 sumpar=0 contpar=0

No
i<=270
<<

Si

“dame números:”, num

divi= num mod 2

No
div=0
<<

Si sumimpar= sumimpar + num

sumpar= sumpar + num


mod 2

conpar= conpar + i

i= i + 1

prompar= sumpar/contpar

“promedio de números pares:”, prompar

“la suma de los impares:”, sumimpar

FIN
28. Escriba un diagrama de flujo que obtenga la suma e imprima los términos de la
siguiente serie: 2, 5, 7, 10, 12, 15, 17… 1800.

INICIO

sumaserie, dato, contterm, par

sumaserie=0 par=0 dato=0 contterm=1

No
dato <=1800
<<

Si
sumaserie= sumaserie + dato

par= contterm mod 2

No
par=0
<<

Si
dato= dato + 2 dato= dato + 3

contterm= contterm + 1
+2

“la suma de la serie es:”, sumaserie

FIN
29. Hacer un diagrama de flujo tal que dado N números enteros como dato, calcular
el mayor y menor de estos números y los imprima.

INICIO

may, men, num, total, i

i=1 may=0 men= 0

“cuánto números vas a ingresar:”, total

“dame números:”, num

may=num men=num

No
i<=total
<<

Si
“dame números:”, num

No
num>may
<<

Si
No
num<men
<< may=num

Si i=i+1
men=num

i=i+1

“el número mayor es:”, may

“el número menor es:”, men

FIN
30. Haga un diagrama de flujo que calcule el número de término 180 de la secuencia
FIBONACCI e imprima toda la serie hasta el término 180. Los 2 primeros números
de la serie son 0 y 1. El resto se calcula como la suma de los 2 números
inmediatos que le preceden.
Ejemplo: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34…

INICIO

prim, seg, cont

prim= 0 seg=1 cont=3

prim, “,”, seg,


“,”

No
cont<180
<<
prim, “,”, seg,
Si
“,”
sum= prim+ seg

Sum, “,”

Prim= seg

Seg= suma

Cont=cont + 1

“termino la serie”
prim, “,”, seg,
“,”

FIN
31. Imprimir las primeras 50 potencias de 4.

INICIO

num, pot

num= 4 pot= 1

Si

No
Pot<=30
<<

num= num ^ pot

pot= pot + 1

pot, “,”

FIN

Potrebbero piacerti anche