Está en la página 1de 25

INGENIERÍA INDUSTRIAL

ALGORITMOS Y LENGUAJES DE PROGRAMACIÓN


- INC-1005-2019B

Actividad 6 T2 "Actividad práctica"

Profesor: Rafael Portillo Rosales


Fecha: 21/09/2019

Problema No. 29
Se desea mostrar el nombre del mes a partir del número correspondiente proporcionado por el
usuario.
Ejemplo: Proporciona un número: 5
El número 5 corresponde al mes de MAYO.
Nota: Debes repetir hasta que el usuario ya no desee conocer nombres de mes.

Proceso sin_titulo
Definir control, mes Como Entero
Definir res como texto

Repetir
Escribir "Seleccione un número del 1 al 12 correspondiente al mes"
Leer mes
Según mes Hacer

1:
Escribir "Enero"
2:
Escribir "Febrero"
3:
Escribir "Marzo"
4:
Escribir "Abril"
5:
Escribir "Mayo"
6:
Escribir "Junio"
7:
Escribir "Julio"
8:
Escribir "Agosto"
9:
Escribir "Septiembre"
10:
Escribir "Octubre"
11:
Escribir “Noviembre"
12:
Escribir "Diciembre"

De Otro Modo:
Escribir "no es un número del mes del 1 al 12"
Fin Según
Escribir "Desea terminar con la verificación s.Si n.No"
Leer res
Si res="s" Entonces
control=1
Sino
control=0
Fin Si
Hasta Que control=1
Fin Proceso

Problema No. 30

<Se desea mostrar el nombre del día a partir del número correspondiente proporcionado por el
usuario.
Ejemplo: Proporciona un número: 8
El número 8 corresponde al número con letra OCHO.
Nota: Debes repetir hasta que el usuario ya no desee conocer día en letra.

SubProceso retorno <- calculo ( arg )


escribir sin saltar "Ingrese un numero del 1 al 31 solamente:";
Leer cantidad
Escribir "";
Si cantidad=0 Entonces
Escribir Sin Saltar "cero"
Sino
Fin Si
Escribir ""
retorno=arg
Dimension unidades(9)
unidades[1]<- "uno"
unidades[2]<- "Dos"
unidades[3]<- "tres"
unidades[4]<- "cuatro"
unidades[5]<- "cicno"
unidades[6]<- "seis"
unidades[7]<- "siete"
unidades[8]<- "ocho"
unidades[9]<- "nueve"
Dimension decimas(3)
decimas[1]<- "Diez"
decimas[2]<- "Veinte"
decimas[3]<- "treinta"
dimension diez_y(5)
diez_y[1] <- "once"
diez_y[2] <- "deoce"
diez_y[3] <- "trece"
diez_y[4] <- "catorce"
diez_y[5] <- "quince"
unidad <- cantidad mod 10;
decima <- ((cantidad-cantidad mod 10)/10)mod 10
si unidad <>0 o decima <>0 entonces
Escribir "";
FinSi
Si decima=0 Entonces
Escribir unidades[unidad];
Sino
si unidad=0 entonces
Escribir decimas[decima];
Sino
Si decima=1 y unidad>=1 y unidad<=5 Entonces
Escribir diez_y[unidad];
Sino
Si decima=1 Entonces
Escribir "dieci" unidades[unidad];
Sino
Si decima=2 Entonces
Escribir "veinti", unidades[unidad]
Sino
Escribir "Treinta y ", unidades[unidad]
Fin Si
Fin Si
Fin Si
Fin Si
fin si

Fin SubProceso
Proceso sin_titulo
Repetir
resultado = calculo(entrada)
Escribir "Desea terminar con la verificacion s.Si n.No"
Leer res
Si res="s" Entonces
control=1
Sino
control=0
Fin Si
Hasta Que control=1
FinProceso

Problema No. 31

Se desea mostrar una fecha con letra a partir de solicitar al usuario la siguiente información:
Proporciona el día: 20
Proporciona el mes: 9
Proporciona el año: 2010
Debe mostrar en pantalla:
La fecha corresponde al día VEINTE del mes de SEPTIEMBRE del año 2010.
Deberá repetirse hasta que el usuario ya no desee capturar datos, así mismo debes validar que
el usuario proporcione datos validos (día: del 1 al 31 y mes: del 1 al 12, año: debe ser positivo).
SubProceso retorno<-calculo (arg)

Mientras cantidad<=0 o cantidad>31 Hacer


Escribir 'Escribe el mes del 1 al 31'
Leer cantidad
FinMientras
Mientras mes<=0 o mes>12 Hacer
Escribir 'Escribe el mes del 1 al 12'
Leer mes

FinMientras
Escribir "Escribe el año"
leer año

Segun mes Hacer


1:
mesr= 'Enero'
2:
mesr= 'Febrero'
3:
mesr= 'Marzo'
4:
mesr= 'Abril'
5:
mesr= 'Mayo'
6:
mesr= 'Junio'
7:
mesr= 'Julio'
8:
mesr= 'Agosto'
9:
mesr= 'Septiembre'
10:
mesr= 'Octubre'
11:
mesr= 'Noviembre'
12:
mesr= 'Diciembre'
De Otro Modo:
Escribir 'no es un número del mes del 1 al 12'
FinSegun
Escribir ''
Si cantidad=0 Entonces
Escribir 'cero' Sin Saltar
FinSi
Escribir ''
retorno<-arg
Dimension unidades(9)
unidades(1)<-('uno')
unidades(2)<-('Dos')
unidades(3)<-('tres')
unidades(4)<-('cuatro')
unidades(5)<-('cicno')
unidades(6)<-('seis')
unidades(7)<-('siete')
unidades(8)<-('ocho')
unidades(9)<-('nueve')
Dimension decimas(3)
decimas(1)<-('Diez')
decimas(2)<-('Veinte')
decimas(3)<-('treinta')
Dimension diez_y(5)
diez_y(1)<-('once')
diez_y(2)<-('deoce')
diez_y(3)<-('trece')
diez_y(4)<-('catorce')
diez_y(5)<-('quince')
unidad<-cantidad MOD 10
decima<-((cantidad-cantidad MOD 10)/10) MOD 10
Si unidad<>0 O decima<>0 Entonces
Escribir ''
FinSi
Si decima=0 Entonces
Escribir unidades(unidad), " de ", mesr, " del ", año;
Sino
Si unidad=0 Entonces
Escribir decimas(decima), " de ", mesr, " del ", año;
Sino
Si decima=1 Y unidad>=1 Y unidad<=5 Entonces
Escribir diez_y(unidad), " de ", mesr, " del ", año;
Sino
Si decima=1 Entonces
Escribir 'dieci',unidades(unidad), " de ", mesr, " del ", año;
Sino
Si decima=2 Entonces
Escribir 'veinti',unidades(unidad), " de ", mesr, " del
", año;
Sino
Escribir 'Treinta y ',unidades(unidad), " de ", mesr, "
del ", año;
FinSi
FinSi
FinSi
FinSi
FinSi
FinSubProceso

Proceso Actividad_30
Definir resultado Como Entero
Repetir
resultado<-calculo(entrada)
Escribir 'Desea terminar con la verificacion s.Si n.No'
Leer res
Si res='s' Entonces
control<-1
Sino
control<-0
FinSi
Hasta Que control=1
Escribir resultado
FinProceso

Problema No. 32

En la tienda departamental desean que elabores un programa para llevar el control de las
ventas realizadas en cada departamento, han decidido aplicar diferentes descuentos,
dependiendo de los montos, así como del departamento en donde el cliente compre.

Los criterios son los siguientes:

Departamento de Caballeros.

Si las compras son hasta $10,000.00 se le aplica un descuento del 20%, si se excede entonces
se le aplicará el 30%.

Departamento de Niños.
Si las compras son hasta $5,000.00 se les obsequiara un peluche a elegir.

Si las compras son mayores a $5,000.00y hasta $10,000.00, se les aplicará un descuento del
30%, si se excede se les aplicará el 40%.

Departamento de Damas.

Si las compras son hasta $7,500.00 se les aplica un descuento del 40% además de obsequiarle
un perfume, si las compras exceden se le aplicará un descuento del 50% y posteriormente una
bonificación del 10% en monedero electrónico.
El gerente de la tienda desea que le informes al termino del día.
Cual fue la cantidad de ventas por departamento
La cantidad de descuentos
Así como la cantidad real recaudada por cada departamento.
Así mismo desea que le informes cuantos clientes compraron en cada departamento
Cuantos obsequios regalo la tienda (peluches/perfumes)
Cuánto dinero se acumuló en monedero electrónico.
Nota: Se desconoce cuántos clientes acudirán a la tienda.
Proceso sin_titulo
Definir depto Como Entero
Definir regnin,regdam como entero
definir monedam como real
definir cliecab,clienin,cliedam como entero

Repetir
Escribir "Seleccione departamento"
Escribir "1 Departamento de caballeros"
escribir "2 Departamento de Niños"
Escribir "3 Departamento de Damas"
Leer depto
Segun depto Hacer
1:
resulc=0
Escribir "Introdusca total de compra en el departamento de caballeros"
leer entrada

resulc = cab(entrada)
escribir resulc
cliecab=cliecab+1
2:
Escribir "Introdusca total de compra en el departamento de Niños"
leer entrada
resuln = nin(entrada)
si resuln<= 5000 entonces
regnin=regnin+1
FinSi

clienin=clienin+1
3:
Escribir "Introdusca total de compra en el departamento de Damas"
leer entrada
resuld = dam(entrada)
si resuld<= 4500 entonces
regdam=regdam+1
Sino
mon=mon+(resuld*0.1)
monedam=monedam+mon
FinSi
escribir resuld
cliedam=cliedam+1
De Otro Modo:
Escribir "No hay otro departamento"
Fin Segun

totalcab=totalcab+resulc
totalnin=totalnin+resuln
totaldam=totaldam+resuld

Escribir "Desea cerrar la caja s.Si n.No"


Leer res
Si res="s" Entonces
control=1
Sino
control=0
Fin Si
Hasta Que control=1

//Al cierre de caja total de todos los departamentos


Escribir "Total de ventas en el departamento de caballeros:","$", totalcab
Escribir "Total de clientes que compraron en el departamento de caballeros: ", cliecab
Escribir
"___________________________________________________________________________"
Escribir "Total de ventas en el departamento de niños: ","$", totalnin
Escribir "Total de clientes que compraron en el departamento de Niños: ", clienin
Escribir "Total de regalos para los niños entregados;", regnin
Escribir
"___________________________________________________________________________"
escribir "Total de ventas en el departamento de damas: ", "$" totaldam
Escribir "Total de clientes que compraron en el departamento de caballeros: ", cliedam
Escribir
"___________________________________________________________________________"
Escribir "Total en modenero electronico entregado:", "$", monedam
escribir "Total de regalos para dama entregados:", "$" regdam

FinProceso

// ventas de departamento de caballeros


SubProceso retorno <- cab( carg )
definir retorno como real
Si carg<=10000 Entonces
retorno=carg*0.80
escribir "aplico un 20%"
Sino
retorno=carg*0.70
escribir "aplico un 30%"
Fin Si

Fin SubProceso

// Ventas de Niños
SubProceso retorno <- nin( narg)
definir retorno como real
Si narg>5000 y narg<=10000 Entonces
retorno=narg*0.70
escribir "aplico un 30%"
Sino
Si narg>10000 Entonces
retorno=narg*0.60
escribir "aplico un 40%"
Sino

retorno=narg
Fin Si
fin si

Fin SubProceso

//Ventas de Damas
SubProceso retorno <- dam( darg )
definir retorno como real
si darg<=7500 entonces
retorno=darg*0.6
escribir "aplico un 40%"
Sino

si darg>=7500 entonces
retorno=darg*.50
escribir "aplico un 50%"

FinSi
FinSi

Fin SubProceso

Problema No. 33

Una empresa que fabrica piezas para automóvil, desea que le apoyes a contabilizar el total de
piezas fabricadas por día, la logística es la siguiente:

Existe un supervisor encargado de recibir las piezas que cada uno de los obreros fabrica, no
existe una hora determinada para entregarlas ni una cantidad fija, por lo que en cualquier
momento los obreros pueden realizar sus entregas. Cada obrero puede realizar cualquier tipo
de pieza (carburador, engranes y bomba de gasolina).

El dueño de la empresa desea que lo apoyes para obtener al final del día la siguiente
información:

Cantidad de piezas por tipo.

Cantidad de cajas de producto que podrá entregarse a nuestros clientes (los carburadores se
empacan en caja de 10 unidades, los engranes en cajas de 25 piezas y las bombas de gasolina
en cajas de 20 piezas).

Cantidad de dinero por cobrar al cliente (se sabe que la pieza de carburador tiene un precio de
venta de $125.00, engranes $150.00 y bomba de gasolina $80.00).

Nota: Se vende al cliente únicamente por caja y debes mostrar cuantas piezas quedaron de
cada tipo de producto.

Realiza el análisis, pseudocódigo, diagrama de flujo correspondiente y ejecución del problema


en un documento en Word y sube el archivo con la nomenclatura indicada al inicio del curso.
Proceso Actividad_33

definir carb,eng,bomg Como Entero

Repetir

Escribir "Seleccione material a integrar"

Escribir "1 Carburador"

escribir "2 Engranes"

Escribir "3 Bomba de gasolina"

Escribir "XXXXXXXXXXXXXXX"

Escribir "Seleccione material de venta"

Escribir "4 Venta Carburador 10 unidades usted tiene en existencia: ", cajacarb " y pzas
",carb

Escribir "5 Venta de Engranes caja con 25 pzas usted tiene en existencia: " cajaeng " y
pzas " eng

Escribir "6 Venta de bomas de gasolina caja con 20pzas usted tiene en existencia: "
cajabombg " y pzas " bomg

Escribir "7 Resultado de ventas y cerrar "

Leer menop
Segun menop Hacer

1:

Escribir "Capture cntidad de carburadores"

leer entrada

carb=carb+entrada

escribir carb

Mientras carb>=10 Hacer

cajacarb=cajacarb+1

carb=carb-10

Fin Mientras

2:

Escribir "Capture cntidad de Engranes"

leer entrada

eng=eng+entrada

escribir eng

Mientras eng>=25 Hacer

cajaeng=cajaeng+1

eng=eng-25

Fin Mientras

3:

Escribir "Capture cntidad de Bombas de gasolina"

leer entrada

bomg=bomg+entrada

Mientras bomg>=20 Hacer

cajabombg=cajabombg+1

bomg=bomg-20

Fin Mientras

4:
resp="s"

Mientras resp="s" Hacer

Escribir "introduzca cantidad de cajas de carburadores a vender tiene


una existencia de: ",cajacarb

Leer cant

si cant>cajacarb Entonces

escribir "No tiene suficiente material para surtir este pedido tiene
una existencia de: ",cajacarb

Sino

cajacarb=cajacarb-cant

pagcarb=cant*10*125

gtcarb=gtcarb+pagcarb

FinSi

Escribir "Desea vender mas carburadores? S/N"

Leer resp

Fin Mientras

5:

resp="s"

Mientras resp="s" Hacer

Escribir "introduzca cantidad de cajas de engranes a vender tiene


una existencia de: ",cajaeng

Leer cant

si cant>cajaeng Entonces

escribir "No tiene suficiente material para surtir este pedido


tiene una existencia de: ",cajaeng

Sino
cajaeng=cajaeng-cant

pageng=cant*25*150

gteng=gteng+pageng

FinSi

Escribir "Desea vender mas engranes? S/N"

Leer resp

Fin Mientras

6:

resp="s"

Mientras resp="s" Hacer

Escribir "introduzca cantidad de cajas de bombas de gasolina a


vender tiene una existencia de: ",cajabombg

Leer cant

si cant>cajabombg Entonces

escribir "No tiene suficiente material para surtir este pedido


tiene una existencia de: ",cajabombg

Sino

cajabombg=cajabombg-cant

pagbg=cant*20*80

gtbm=gtbm+pagbg

FinSi

Escribir "Desea vender mas engranes? S/N"

Leer resp

Fin Mientras

7:

control=1
De Otro Modo:

Escribir "No selecciono menu dentro del sistema tiene una existencia de:
", bomg

Fin Segun

Hasta Que control=1

Escribir "Vetas totales:"

Escribir "Carburador: " gtcarb

Escribir "Engranes: " gteng

Escribir "Bombas de Gasolina: " gtbm

FinProceso

Problema No. 34

En la Expo de universidades, bachilleratos y particulares 2015 se recaudó dinero para apoyar a


los jóvenes con bajos recursos, los organizadores recaudaron monedas y billetes de diferente
denominación, ellos solicitan que les apoyes para saber cuántos billetes y monedas de cada
denominación tendrían, para obtener la menor cantidad de billetes y monedas posible.

Nota: El organizador te proporciona la cantidad y tú le debes decir en cuántos billetes de cada


denominación podrá cambiar esa cantidad de dinero para tener la menor cantidad de billetes y
monedas.
Proceso Problema_34
//Expo universidad bachilleres 2015

Escribir "Defina cantidades de entregadas"


Escribir "________________________________"
Escribir sin saltar "Total de monedas de 0.50c"
Leer cent
cent=cent*0.5
Escribir sin saltar "Total de monedas de $1"
Leer pesos
Escribir sin saltar "Total de monedas de $2"
Leer dosp
dosp=dosp*2
Escribir sin saltar "Total de monedas de $5"
Leer cincp
cincp=cincp*5
Escribir sin saltar "Total de monedas de $10"
Leer diezp
diezp=diezp*10
Escribir sin saltar "Total de billetes de $20"
Leer veintp
veintp=veintp*20
Escribir sin saltar "Total de billetes de $50"
Leer cincup
cincup=cincup*50
Escribir sin saltar "Total de billetes de $100"
Leer cienp
cienp=cienp*100
Escribir sin saltar "Total de billetes de $500"
Leer quinp
quinp=quinp*500
Escribir sin saltar "Total de billetes de $1000"
Leer milp
milp=milp*1000
total=cent+pesos+dosp+cincp+diezp+veintp+cincup+cienp+quinp+milp

Escribir "El total recaduado es de: $",total


si total>=1000 entonces
billmil =trunc (total/1000)
total=total-(billmil*1000)
FinSi
si total>=500 entonces
billquin =trunc (total/500)
total=total-(billquin*500)
FinSi
si total>=100 entonces
billcien =trunc (total/100)
total=total-(billcien*100)
FinSi
si total>=50 entonces
billcin =trunc (total/50)
total=total-(billcin*50)
FinSi
si total>=20 entonces
billveint =trunc (total/20)
total=total-(billveint*20)
FinSi
si total>=10 entonces
mondiez =trunc (total/10)
total=total-(mondiez*10)
FinSi
si total>=5 entonces
mondcinc =trunc (total/5)
total=total-(mondcinc*5)
FinSi
si total>=2 entonces
monddos =trunc (total/2)
total=total-(monddos*2)
FinSi
si total>=1 entonces
mondpes =trunc (total/1)
total=total-(mondpes*1)
FinSi
cnt=total
Escribir "En billetes de Mil son: ", billmil
Escribir "En billetes de quinientos son: ", billquin
Escribir "En billetes de cien son: ", billcien
Escribir "En billetes de cincuenta son: ", billcin
Escribir "En billetes de veinte son: ", billveint
Escribir "En monedas de diez son: ", mondiez
Escribir "En monedas de cinco son: ", mondcinc
Escribir "En monedas de dos son: ", monddos
Escribir "En monedas de peso son: ", monddos
Escribir "En monedas de centavos son: ", cnt
FinProceso

Problema No. 35

Un matrimonio fue invitado para ser padrinos de Bautismo, de acuerdo a la tradición deben dar
bolo el día del evento afuera de la iglesia, después de la ceremonia religiosa, los padrinos
avientan monedas, por tal motivo los padrinos quieren cambiar su dinero (lo tienen en billetes)
quiere que le apoyes a saber cuántas monedas pueden tener de las diferentes
denominaciones, es decir todo su dinero en monedas de $10.00, todo su dinero en monedas de
$5.00, .... (toma en cuenta monedas de 10, 5, 2 y 1 peso únicamente),, para que ellos tomen la
decisión en que denominación cambiaran sus billetes.

Proceso Actividad_35

Escribir sin saltar "Que cantidad desea cambiar: "

Leer total

Escribir "Seleccione la denominacion de cambio"

Escribir "Menú de recomendaciones"

Escribir " 1. Monedas de 10"

Escribir " 2. Monedas de 5"

Escribir " 3. Monedas de 2"

Escribir " 4. Monedas de 1"


Escribir "Elija una opción (1-4): "

Leer OP

Segun OP

1:

res=total/10

mon= "diez"

2:

res=total/5

mon= "cinco"

3:

res=total/2

mon= "Dos pesos"

4:

res=total/1

mon= "Peso"

FinSegun

Escribir "El total en monedas de " mon " son: " res

FinProceso

Problema No. 36
Plantea un problema personal, laboral o del giro que gustes y resuélvelo, debes considerar que
el problema planteado debe utilizar: entradas, salidas, procesos, condiciones, según sea el
caso, repeticiones (ciclos).

Realiza el análisis, pseudocódigo, diagrama de flujo correspondiente y ejecución del problema


en un documento en Word y sube el archivo con la nomenclatura indicada al inicio del curso.

Ejemplo
Se tiene que definir una cantidad de nuemeros, los cuales se tiene que sacar el promedio de
esta cantidad de números, pero existe una restricción que no tiene que tiene que ser menor a
10 registros y solamente te da tres intentos si en esos tres intentos no se realiza la correcta
selección se cierre el sistema enviando error de intentos relizados.

Proceso Promedio
Repetir
Escribir "Ingrese la cantidad de Datos menores a 10";
Leer N;
si N<10 entonces
acum<-0;
Para i<-1 Hasta N Hacer
Escribir "Ingrese el dato ",i,":";
Leer dato;
acum<-acum+dato;
FinPara
prom<-acum/N
Escribir "El promedio es: ", prom;
term=1
Sino
Escribir "El numero tiene que ser menor a 10 datos solo tiene 3 intentos"
Limpiar Pantalla
int=int+1
Escribir "Lleva " int " de 3"

FinSi
Hasta Que term=1 o int=3
si int=3 Entonces
Escribir "Excedio numero de intentos"
FinSi

FinProceso

Referencias Bibliografías
https://www.uv.mx/personal/mansuarez/files/2014/02/Tema-1.Introduccion-a-los-
algoritmos.pdf

También podría gustarte