ALGORITMOS Y ESTRUCTURA DE DATOS
GUIA DE LABORATORIO DE ALGORITMO Y ESTRUCTURA DE DATOS
ALGORITMOS Y ESTRUCTURA DE DATOS
LABORATORIO DE ALGORITMO Y ESTRUCTURA DE DATOS CURSO
: LENGUAJE DE PROGRAMACION I LABORATORIO
TEMA
: 02
: ESTRUCTURAS DE CONTROL
(Decisiones simples, dobles, anidados, múltiples)
EJERCICIOS DIRIGIDOS EJERCICIO # 01
En la universidad Tecnológica del Perú el rendimiento de un alumno lo clasifican de acuerdo siguiente: loa CLASIICACIO$ %ROMEDIOS si su promedio est* entre +, y - &'E() /E0'12/ si su promedio est* entre ++ y + DE4I5IE(TE si su promedio est* entre , y + PE6I7)
si su promedio est* entre y
Desarrollar un programa en java que me permita alumno y calcular su respectivo promedio. Imprimir por pantalla prom!!edios.
ingresar por teclado 3 notas de un
la respectiva clasificación del alumno en función
al
rango de
Solución:
a) Primeramente tenemos que crear un programa en java de nom"re implemente el m#todo main$%.
Ej!cicio1"1 que
Implementando dentro de la clase el método principal (main)
ALGORITMOS Y ESTRUCTURA DE DATOS
&) Dentro del m#todo principal$ main % tenemos que declarar localmente tres varia"le de
tipo de datos S'!in( y tres varia"les de tipo de dato dato ou&l.
in' una varia"le de tipo de
Declarando las aria!les locales
c) Despu#s que 8emos declarado las varia"les locales vamos a implementar código que me permita el ingreso de dato por teclado a trav#s de cajas de dialogo para esto tenemos que primeramente importar el paquete de nom"re ja*a+,-.in(,/
'tili9ando el m#todo s8oInputDialog$% de la clase ;)ptionPane.
1) Importando el pa"#ete "#e me permite la #tili$aci%n de la clase &Optionpane
ALGORITMOS Y ESTRUCTURA DE DATOS
2) Estos c%di'o me permiten el in'reso de datos por teclado a traés de la clase &Option ane el método es s*o+Inp#tDialo'()
) 2 continuación vamos a convertir todas las cadenas num#ricas ingresadas por el teclado a valores enteros.
Conirtiendo de #na cadena n#mérica a #n alor entero
) 28ora vamos a calcular el promedio de las notas ingresadas por el teclado
Calc#lando el promedio de las notas in'resadas
ALGORITMOS Y ESTRUCTURA DE DATOS
) Para poder evaluar la clasificación del alumno en función a su promedio tenemos que
utili9ar un conjunto de estructuras condicionales simples.
Con,#nto de condicionale s simples"#e eal.an los promedioscon la /nalidad de mostrar la cate'or0a del al#mno
() 4inalmente vamos a compilar ejecutar el programa.
ALGORITMOS Y ESTRUCTURA DE DATOS Ingresando las notas por el teclado
5*lculo y salida datos por pantalla
ALGORITMOS Y ESTRUCTURA DE DATOS EJERCICIO # 0
'na empresa desea adquirir cierta cantidad de unidades de un producto para lo cual cuenta con la oferta de dos proveedores 2 y & tal como se e
•
•
%!o*o!
A
•
•
%!o*o!
Costo #nitario i'#al a s1 23 43 5 de desc#ento para m6s de 37 #nidades ad"#iridas
Costo #nitario i'#al a s1 2893 47 5 de desc#ento para m6s de :3 #nidades ad"#iridas
B
Desarrollar un programa en ;ava que determine qui#n de los proveedores es el m*s conveniente. Solución: a) Primeramente tenemos que crear un programa en java de nom"re implemente el m#todo principal $main%.
Ej!cicio"1 que
Implementando el método principal- dentro de la clase
&) Dentro del m#todo principal $ main% tenemos que declarar localmente una varia"le de tipo de dato n'!o $ can'% una varia"le de tipo de dato S'!in( $ can'Ca% dos varia"les de tipo de dato real$ -cA 2 -cB%.
ALGORITMOS Y ESTRUCTURA DE DATOS
Declarando dentro del método principal (main)aria!les locales9
c) 28ora que 8emos declarado las varia"les locales vamos implementar código que me permita ingresar por teclado la can'ia para eso tenem os que impo rtar el paquete ja*a+,-.in(,/
2dem*s este paquete importado nos proporciona un m#todo que me permite invocar una caja de dialogo s8oInputDialog 3) la cla- JO4'ion%an . 1a cadena num#rica ingresada por el teclado se almacena en la varia"le can'Ca para que luego en la siguiente se convierta en un valor num#rico entero a trav#s del m#todo parseInt de la clase Integer.
1) En este c%di'o lo'ramos in'resar por el teclado a traés de #na ca,a de dialo'o- "#e se '#arda en la aria!le cantCad
2)En
este c%di'o conertimos a #n alor entero el alor in'resado por el teclado- se '#arda lo conertido a #na aria!le cant
ALGORITMOS Y ESTRUCTURA DE DATOS ) 2 continuación vamos a calcular el descuento del proveedor 2 y & y para eso tenemos que validar la cantidad.
Tenemos que implementar una primera condicional do"le para calcular el descuento del proveedor 2 y otra condicional do"le para calcular el descuento del proveedor &.
1)
Implementando la primera condicional do!lealidando la (cant>50) cantidad con la /nalidad de calc#lar el desc#ento del proveedor A
2)
Implementando la se'#nda condicional do!lealidando la (cant>30) cantidad con la /nalidad de calc#lar el desc#ento del proveedor B
) Para consolidar nuestro programa solo faltar=a comparar los respectivos descuentos de am"os proveedores.
>amos a implementar una condicional do"le para poder validar el respectivo descuento de am"os proveedores.
ALGORITMOS Y ESTRUCTURA DE DATOS
Implementado condicional
#na do!le
donde alide los respectios desc#entos de am!os proeedores (descA>descB) , para mostrar c#al de los dos proeedores es el m6s coneniente
) 4inalmente vamos a compilar ejecutar el programa.
Ingresando la cantidad por el teclado
7ostrar la salida por pantalla
ALGORITMOS Y ESTRUCTURA DE DATOS EJERCICIO # 05
En la univ ersidad Telesup e
%E$SIO$
A
S6770
B
S6700
C
S6890
D
S6800
6emestralmente la universidad efectúa re"ajas en las pensiones de sus estudiantes a partir del segundo ciclo. Estas re"ajas est*n en función al promedio ponderado que tiene el alumno en el momento de matricularse al segundo ciclo. 2 continuación vamos a mostrar una ta"la donde 8ay una serie de rangos de promedios con sus respectivos descuentos. %ROMEDIO 0 a 1 5,
DESCUE$TO $o ;a< -cun'o
18,00 a 17,
10=
19,00 a1>,
1=
1?,00a0,00
17=
Desarrolle un programa en ;ava que determine cuanto de re"aja reci"ir* un estudiante so"re su pensión actual y a cuanto asciende su nueva pensión. Solucion:
a% Primeramente tenemos que crear un programa en java de nom"re implemente el m#todo principal $main%.
Ej!cicio5"1 que
ALGORITMOS Y ESTRUCTURA DE DATOS
Implementa ndo el método principal (main)
"% Dentro del m#todo principal $main% tenemos que declarar localmente cuatro varia"le de tipo de dato ou&l $4!o@io 2 4n-ionu*a 2 4n-ionac'ual 2 -cun'o % una varia"le de tipo de dato S'!in( $ca'(o!iaCa % y una varia"le de tipo de dato in' $ca'(o!a %
Declarando las aria!les locales
c% 28ora que 8emos declarado las varia"les vamos a poder ingresar la ca'(o!a por el teclado para eso tenemos que importar el paquete ja*a+,-.in(,/ 2dem*s este paquete importado nos proporciona un m#todo que me permite invocar una caja de dialogo s8oInputDialog 3) de la clase JO4'ion%an, 1a cadena num#rica ingresada por el teclado se almacena en la varia"le ca'(o!iaCa para que luego en la siguiente l=nea se convierta en un valor num#rico entero a trav#s del m#todo 4a!-In'$% de la clase In'(!.
ALGORITMOS Y ESTRUCTURA DE DATOS
In'resando por teclado la cate'or0a a traés de #na ca,a de dialo'o
2) Conirtiendo a #n n.mero entero el alor (cate'or0aCad) in'resado por el teclado d% 2 continuación vamos a implementar una condicional múltiple $sitc8 ? case% para evaluar la categor=a y determinar cu*l es la pensión actual.
Implementand o la condicional m.ltiple (s+itc*) con la /nalidad de calc#lar la pensi%n act#al9
ALGORITMOS Y ESTRUCTURA DE DATOS
e% 5uando ya 8emos determinado el monto de la pensión actual entonces vamos ingresar por teclado el promedio que tiene el alumno 2dem*s tenemos que determinar cu*nto de descuento tiene el alumno implementando una condicional anidado $I4 ?E16E?I4?E16E%
ALGORITMOS Y ESTRUCTURA DE DATOS
1)
In'resando por teclado el promedio a traés de #na ca,a de dialo'o9
2)
L#e'o conertimos a #n n.mero real
3)
Implementando #na condici%n anidado para eal#ar a traés de ran'o el promediocon la /nalidad de calc#lar el desc#ento
4) Calc#lando la pensi%n n#ea
5) Mostrando por pantalla la pensi%n act#al la pensi%n n#ea
f% 4inalmente vamos a compilar ejecutar el programa. Ingresando la categor=a por el teclado
Ingresando por teclado el promedio ponderado del alumno
ALGORITMOS Y ESTRUCTURA DE DATOS
7ostrar la salida por pantalla
EJERCICIOS %RO%UESTOS EJERCICIO %RO%UESTO # 01
Desarrollar un programa en ;ava que permita calcular la remuneración del empleado. Ingrese el "*sico número de 8ijos y cargo@ si su cargo es o"rero A)B reci"ir* + por &onificación si su cargo es empleado AEB reci"ir* una &onificación de +-. 6i tiene 8ijos reci"ir* por cada uno C+ soles por concepto de 2signación. El total ser* la suma del "*sico "onificación y 2signación.
EJERCICIO %RO%UESTO # 0
Desarrollar un programa en ;ava que pe rmita calcular la com isión total que rec i"e un vendedor donde ingrese el monto de ventas si el monto es menor a + reci"ir* solamente de su ventas por comisión@ si sus ventas se encuentran entre + a su comisión ser* de . de las ventas y - por "onificación pero si sus ventas es mayor a su comisión ser* de F de sus ventas y su "onificación es 3.>isuali9ar el total .
EJERCICIO %RO%UESTO # 05
Ingrese por Teclado el (om"re del )"rero las 8oras tra"ajadas y el Tipo de 2ctividad $Pintado 1aqueado &arni9ado% por cada 8ora tra"ajada se le pagara: a% 6i el 6ervicio es Pintado se le pagara sG. +
ALGORITMOS Y ESTRUCTURA DE DATOS "% 6i el 6ervicio es 1aqueado se le pagara sG. +c% 6i el 6ervicio es &arni9ado se le pagara sG. +C Por cada 8ora e
Desarrollar un 2lgoritmo que permita calcular la remuneración del tra"ajador donde ingrese el "*sico y cargo@ 6egún el 5argo reci"ir* lo siguiente: 6i su cargo es o"rero A)B: &onificación +@ 2signación +-. 6i su cargo es empleado AE B: &onificación +-@ 2signación + y /efrigerio -. 6i su cargo es ejecutivo A ; B : &onificación -@ /efrigerio - y 2signación . 5alcule y >isuali9ar el total que es la 6uma de todos los ingresos
EJERCICIO %RO%UESTO # 07
6e desea implementar un Programa que permita calcular la >enta de Hapatillas. Ingrese por teclado la 7arca de la Hapatilla la talla a >ender y el número de pares vendidas. 2 continuación se muestra un 5uadro del precio de un par de Hapatillas.
Talla;Marca
Adidas
>ila
:?
437
4@7
?7
@7
47
437
?3
@2
47
437
B7
1a >enta es el producto del precio del par de Hapatilla por el número de pares vendidos. De acuerdo al número de pares vendidas se le aplicara un Descuento tal como se muestra en el 5uadro
<#mero de ares
Desc#ento
2a3
35delaenta
a47
?5delaenta
44a27
47delaenta
ALGORITMOS Y ESTRUCTURA DE DATOS M6s de 27
43 de la enta
El neto de la >enta es la Diferencia de la >enta y el Descuento >isuali9ar la >enta el Descuento y el (eto de la >enta.
ALGORITMOS Y ESTRUCTURA DE DATOS
LABORATORIO DE LENGUAJE DE PROGRAMACION CURSO
: ALGORITMO Y ESTRUCTURA DE DATOS LABORATORIO : 03
TEMA
:ESTRUCTURAS DE CONTROL
(Mientras-hacer, hacer- mientras, d esde- hasta)
EJERCICIO DIRIGIDO EJERCICIO # 01
Desarrollar un programa en ;ava que me permita calcular la sumatoria de la serie de números de ( t#rminos
Solución
a%
Primeramente tenemos que crear un programa en java de nom"re Ejercicio 1"1 que implemente el m#todo principal $ @ain%.
Implementando el método principal (main)
ALGORITMOS Y ESTRUCTURA DE DATOS "% 28ora vamos a declarar dentro del m#todo principal $ @ain% tres varia"les$ i 2 nu@'!@ 2 -u@a'o!ia % de tipo de dato in' una varia"le $nu@'!@Ca%de tipo de dato S'!in(9
Declarando dentro
del
método principal (main)- aria!les locales9
c% 1a varia"le numterm5ad almacena un dato ingresado por teclado a trav#s de una caja de dialogo para que luego sea convertido a un numero entero almacenado en la varia"le numterm.
1) rimeramente '#ardamos en la aria!le n#mtermCad #n alor "#e in'resamos por el teclado a traés de #na ca,a de dialo'o9
2) Desp#és ese alor
lo conertimos a #n n.mero entero
ALGORITMOS Y ESTRUCTURA DE DATOS d% Despu#s que 8emos ingresado el número de t#rminos implementamos una estructura repetitiva cuyo número de interacciones es igual al número de t#rminos que previamente 8emos definido.
Implementando #n !#cle while con #na condici%n (i<n!mterm) dentro del !#cle #n contador i""#
e% Dentro de la estructura repeti tiva implementamos una condi cional do"le que me permita evaluar los numero pares e impares que va tomando la varia"le i adem*s a medida que el "ucle funcione se va calculando la sumatoria de estos.
Ac!m!la ndo los alores de i alternand o operacio nes p
Implementando #na condicional do!le c#a condici%n es i $20- a medida "#e #ncione el !#cle esta condicional alida los alores "#e toma la aria!le i, si es par e impar
ALGORITMOS Y ESTRUCTURA DE DATOS f%
4inalmente colocamos el código que me permita el mostrado del resultado por pantalla
Mostrando el res#ltado a traés de #na ca,a de dialo'o
>amos a compilar y ejecutar el programa
ALGORITMOS Y ESTRUCTURA DE DATOS EJERCICIO # 05
Ingrese por teclado un número de 3 cifras calcule y visualice la cantidad de d=gitos pares e impares que tiene el numero a% Primeramente tenemos que crear un programa en java de nom"re Ejercicio 5"1 que implemente el m#todo principal $ main %
Implementando el método principal (main)
"% 28ora vamos a declarar dentro del m#todo principal $ @ain% cinco varia"les $ nu@2 nu@!o24a!2i(i'o % de tipo de dato in' una varia"le $ nu@!oCa%de tipo de dato S'!in(9
Declarando dentro del método principal (main)aria!les locales9
c%
En el programa importamos un paquete java<.sing y adem*s implementamos una estructura repetitiva$do ? 8ile%
Implementando #n !#cle (do % while) con #na condici%n (n!m<100) && (n!m>''')
ALGORITMOS Y ESTRUCTURA DE DATOS d% Dentro del "ucle $ o .;il % implementamos un código que lea un dato ingresado por teclado que representa un numero de tres cifras para que luego sea convertido a un valor entero
1) se
En la aria!le n#meroCad almacena #n alor
in'resado por teclado a traés de #na ca,a de dialo'o9
2)
La aria!le n#meroCad es conertido a #n alor entero
e% 2 continuación vamos a implementar otra estructura repetitiva $8ile%cuya condición es num
Implementand o #n !#cle c#a condici%n es n#m7
ALGORITMOS Y ESTRUCTURA DE DATOS f% Dentro de esta última estructura repetitiva implementamos el siguiente código :
stamente a"#0 *a #n c%di'o dentro de la estr#ct#ra repetitia (+*ile) "#e me permite de/nir los d0'itos pares e impares9
g% 1uego mostramos por pantalla el resultado final del programa
Mostrando por pantalla los res#ltados /nales
ALGORITMOS Y ESTRUCTURA DE DATOS 8% 5ompilando y ejecutando el programa
ALGORITMOS Y ESTRUCTURA DE DATOS EJERCICIO # 08
Desarrollar un programa en java que me permita simular el movimiento de un almac#n de "olsas de cemento. 2l comen9ar la ejecución del programa iniciali9ar el stocJ de "olsas de cemento en - "olsas y la capacidad del almac#n en 3 "olsas. 1uego el programa permitir* efectuar operaciones de depósito y de retiro mostrando en todo momento: •
El stocJ actual del almac#n
•
1a capacidad li"re del almac#n
•
El numero de depósitos y de retiros efectuados
•
1a cantidad total de "olsas depositadas y retiradas
•
1a cantidad m*
•
1a cantidad m=nima de "olsas retiradas y depositadas.
Solución: a) Primeramente tenemos que crear un programa en java de nom"re Ej!cicio1"1 que implemente el m#todo principal $ main %
Implementando el método principal (main)
&) 28ora vamos a declarar dentro del m#todo principal $@ain% tres varia"les$ op2 cantidad seguirstocJcapacidad % de tipo de dato in' una varia"le $cant5adop5ad%de tipo de dato S'!in(9
Declarando dentro del método principal (main)- aria!les locales9
ALGORITMOS Y ESTRUCTURA DE DATOS c) En el programa importamos un paquete java<.sing y adem*s implementamos una estructura repetitiva $do ? 8ile% que me permite que el programa siga funcionando en el momento que el usuario decida.
1) Importando la li!rer0a &aaF9s+in'
2)
Implementando la estr#ct#ra repetitia do+*ile
) Dentro de la estructura repetitiva agregamos l=neas de código que me permitan ingresar una opción eligiendo el depósito o el retiro.
Esta opción despu#s se tiene que convertir a un valor entero. L0nea de c%di'o "#e me permite di'itar #na opci%n (opcionCad) entre el dep%sito el retiro- l#e'o se conierte la opci%n a #n n.mero entero (op)
ALGORITMOS Y ESTRUCTURA DE DATOS )
2 continuación agregamos una serie de l=neas de códigos que me permita ingresar por teclado la cantidad $cant5ad% a trav#s de una caja de dialogo. 1a cantidad $cant5ad% se tendr* que convertir en un numero entero donde ser* almacenado en una varia"le cuyo identificador es cantidad. 1uego tenemos que implementar una condicional múltiple $sitc8% que lea la opción que 8emos escogido.
1)
L0nea de c%di'o "#e me permite di'itar #na cantidad (cantCad)l#e'o se conierte la aria!le a #n n.mero entero (cantidad)
2)
Implementando #na estr#ct#ra condicional m.ltiple con la /nalidad de reali$ar las operaciones de dep%sito retiro
3) L0nea de c%di'o "#e me permite mostrar por pantalla el n.mero de stoc=
ALGORITMOS Y ESTRUCTURA DE DATOS
) 1os respectivos casos de la condicional múltiple$sitc8% se tiene que colocar condicionales do"les con la finalidad de validar la cantidad ingresada en el c*lculo del stocJ en las diferentes opciones de retiro y deposito.
1) Implement ando dentro del case 4 la condicional do!le con la /nalidad de alidar la cantidad el c6lc#lo del stoc=
2) Implem entando dentro del case 2 la condicio nal do!le con la /nalidad de alidar la cantidad el c6lc#lo del stoc=
ALGORITMOS Y ESTRUCTURA DE DATOS () 28ora declaramos en la clase una serie de varia"les de clase y adem*s dentro de los respectivos case de la condicional múltiple$sitc8% implementamos - contadores que me permiten calcular la cantidad de depósitos efectuados y la cantidad de retiros efectuados.
1) Declarando las aria!les
2) Implementa ndo #n contador de la cantidad del dep%sito eect#ado
3) Implementan do #n contado de la cantidad del retiro eect#ado
4)Mostrando
por pantalla el n.mero de dep%sitos eect#ados el n.mero de retiros eect#ados
ALGORITMOS Y ESTRUCTURA DE DATOS 8% En la clase declaramos tres varia"les enteras $ma
1) Declarando aria!les enteras
2) A"#0
*emos lo'rado implementar este c%di'o "#e me permite en primer l#'ar iniciali$ar las aria!les maFimodeposito minimodespositoc#ando la cantidad de dep%sitos es i'#al a #no9 Adem6s calc#lamos el m6Fimo m0nimo deposito
3) Mostramos por pantalla la cantidad m6Fima depositada cantidad m0nima depositada
ALGORITMOS Y ESTRUCTURA DE DATOS
;) 28ora dentro de la condicional múltiple en su respectivo case - implementamos dentro de la condicional do"le un código que me permite calcular el m*
1) A"#0
*emos lo'rado implementar este c%di'o "#e me permite en primer l#'ar iniciali$ar las aria!les maFimoretiro minimoretiro- c#ando la cantidad de dep%sitos es i'#al a #no9 Adem6s calc#lamos el m6Fimo m0nimo retiro
ALGORITMOS Y ESTRUCTURA DE DATOS
2)
Mostrando por pantalla la cantidad m6Fima retirada la cantidad m0nima retirada
i) Co@4ilano < jcu'ano l 4!o(!a@a SALIDA %OR %A$TALLA
ALGORITMOS Y ESTRUCTURA DE DATOS
ALGORITMOS Y ESTRUCTURA DE DATOS