Está en la página 1de 15

Introduccin a la Algoritmia

Gua de Problemas

Primer ciclo 2012

Estructuras Secuenciales
Algoritmos con frmulas definidas
1. Disee un algoritmo que determine el rea y el permetro de un rectngulo, sabiendo que:

Siendo b la base y h la altura. 2. Disee un algoritmo que determine el rea lateral, el rea total y el rea de la base de un cilindro, sabiendo que:

Siendo r el radio y h la altura. 3. Disee un algoritmo que determine la frecuencia cardiaca de un varn de acuerdo a la siguiente frmula:

4.

Disee un algoritmo que determine el ndice de masa corporal, IMC, de una persona de acuerdo a la siguiente frmula:

Estando el peso en kilogramos y la estatura en metros. 5. Disee un algoritmo que determine el promedio final de un alumno para un curso cuya frmula de evaluacin es:

Siendo P1 la nota de la primera prctica, P2 la nota de la segunda prctica, EP la nota del examen parcial y EF la nota del examen final.

Algoritmos de repartos
6. Una institucin social tiene un centro de salud, un comedor infantil, una escuela infantil, una posta mdica y un asilo de ancianos. La institucin recibe anualmente una donacin que lo reparte de la siguiente forma:

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

Centro de salud: 25% de la donacin. Comedor infantil: 45% del monto recibido por la escuela infantil. Escuela infantil: 35% de la donacin. Posta mdica: 40% del monto recibido por el centro de salud. Asilo de ancianos: lo que queda de la donacin.

Disee un algoritmo que determine que cantidad de dinero le corresponde a cada rea. 7. Una empresa ha recibido una donacin del extranjero que contribuir a mejorar la infraestructura de ciertas reas de dicha empresa. La gerencia repartir la donacin de la siguiente manera: rea de produccin, 25% del monto de la donacin. rea de contabilidad, 40% del monto total recibido entre las reas de marketing y soporte. rea de marketing, 15% del monto total recibido entre las reas de produccin y soporte. rea de soporte, 20% del monto de la donacin. rea de recursos humanos, lo que queda del monto de la donacin.

Disee un algoritmo que determine el monto de dinero que recibir cada rea.

Algoritmos de ventas
8. Una tienda ha puesto en oferta la venta de un producto ofreciendo un descuento igual al 15% del importe de la compra. Dados el precio unitario y la cantidad de unidades adquiridas del producto, disee un algoritmo que determine el importe de la compra, el importe del descuento y el importe a pagar. Una empresa de transportes que cubre la ruta Lima-Hunuco ha subido sus pasajes en un 35% por Semana Santa, pero como incentivo obsequia 3 chocolates por cada pasaje adquirido. Dados el precio normal del pasaje y la cantidad de pasajes adquiridos, disee un algoritmo que determine el precio del pasaje por Semana Santa, el importe total a pagar y la cantidad de chocolates de obsequio que le corresponden a un cliente.

9.

10. Una imprenta ha lanzado al mercado la venta al por mayor del cuaderno de 100 hojas mentor que es distribuido a nivel nacional. Como oferta la imprenta aplica un descuento del 12% del importe compra. El importe a pagar se calcula restando el importe de la compra menos el importe del descuento y sumando el costo del transporte. Dados el precio por docena, la cantidad de docenas adquiridas y el costo del transporte, disee un algoritmo que determine el importe compra, el importe del descuento y el importe a pagar que le corresponden a un cliente. 11. Una tienda ha puesto en oferta la venta un producto ofreciendo un descuento denominado 10%+10% que consiste en aplicar dos descuentos. El primer descuento se aplica al importe de la compra. El segundo descuento se aplica a lo que queda de restar el importe de la compra menos el importe del primer descuento. Dados el precio unitario y la cantidad de unidades adquiridas del producto, disee un algoritmo que determine el importe de la compra, el importe del descuento total y el importe a pagar.

CIBERTEC

CARRERAS PROFESIONALES

Algoritmos de sueldos
12. Una empresa paga a sus empleados por horas trabajadas. Por ley, todo empleado esta sujeto a un descuento del 15% del sueldo bruto. Dados el nmero de horas trabajadas y la tarifa por hora de un empleado, disee un algoritmo que determine el sueldo bruto, el descuento y el sueldo neto del empleado. 13. Una empresa paga a sus vendedores un sueldo bruto que se calcula sumando un sueldo bsico de S/. 350 ms una comisin que es igual al 5% del importe total vendido en el mes. Por ley, todo vendedor esta sujeto a un descuento del 11% del sueldo bruto. Disee un algoritmo que determine la comisin, el sueldo bruto, el descuento y el sueldo neto de un vendedor.

Algoritmos diversos
14. Disee un algoritmo que lea cuantas monedas de 10 cntimos, de 20 cntimos, de 50 cntimos, de 1 sol, de 2 soles y de 5 soles dispone una persona y determine la cantidad total de dinero en soles. 15. Disee un algoritmo que lea la edad de una persona en aos y meses y determine la edad de la persona en meses. Por ejemplo, si se ingresa 3 aos y 4 meses el algoritmo debe mostrar 40 meses. 16. Un constructor sabe que necesita 0.5 metros cbicos de arena por metro cuadrado de tarrajeo a realizar. Dados el ancho y el alto de una pared, disee un algoritmo que determine la cantidad de arena necesaria para tarrajearla.

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

Estructura de Seleccin Simple y Doble if e if-else


1. Una tienda ha puesto en oferta la venta de un producto. Si el cliente adquiere ms de 10 unidades del producto, la tienda aplica un descuento igual al 15% del importe de la compra; en caso contrario, el porcentaje de descuento es slo del 5%. Dados el precio unitario del producto y la cantidad de unidades adquiridas, disee un algoritmo que determine el importe de la compra, el importe del descuento y el importe a pagar. Como incentivo adicional, la tienda del ejercicio anterior ha decidido obsequiar una agenda a los clientes que adquieran ms de 10 unidades; en caso contrario, obsequiar un cuaderno. Modifique la solucin del ejercicio anterior, para que el algoritmo determine tambin que regalo le corresponde a un cliente. Dado un partido de ftbol jugado entre dos equipos A y B, disee un algoritmo que determine el resultado del partido entre gan A, gan B o hubo empate conociendo la cantidad de goles anotado por cada equipo. Disee un algoritmo que determine la categora de un estudiante en base a su promedio ponderado, de acuerdo a la siguiente tabla: Promedio 17 14 pero < 17 12 pero < 14 < 12 5. 6. Categora A B C D

2.

3.

4.

Disee un algoritmo que determine la edad menor de tres edades ingresadas. Una tienda vende cuatro tipos de productos a los precios unitarios dados en la siguiente tabla: Cdigo 101 102 103 104 Precio Unitario S/. 17.5 S/. 25.0 S/. 15.5 S/. 30.0

Como oferta la tienda ofrece un porcentaje de descuento sobre el importe de la compra de acuerdo a la siguiente tabla: Unidades adquiridas 1 a 10 11 a 20 21 a 30 Ms de 30 Descuento 5.0% 7.5% 10.0% 12.50%

CIBERTEC

CARRERAS PROFESIONALES

Adicionalmente, si el importe de la compra es mayor que S/. 250, la tienda obsequia una agenda 2010; en caso contrario, obsequia un lapicero. Disee un algoritmo que determine el importe de la compra, el importe del descuento, el importe a pagar y el obsequio por la compra de cierta cantidad de unidades de un mismo tipo de producto. 7. Un supermercado vende yogurt en botellas de 1 litro a los precios dados en la siguiente tabla: Yogurt Gloria Pura Vida Laive Vigor Precio por litro S/. 3.90 S/.3.80 S/. 4.20 S/.3.60

Como oferta la tienda ofrece un porcentaje de descuento sobre el importe de la compra de acuerdo a la siguiente tabla: Unidades adquiridas 1 a 10 11 a 20 21 a 30 Ms de 30 Descuento 5.0% 7.5% 10.0% 12.50%

Adicionalmente, si el importe de la compra es mayor que S/. 250, la tienda obsequia una agenda 2010; en caso contrario, obsequia un lapicero. Cualquiera de los regalos es aplicable nicamente a la compra de yogurt Laive, para las dems marcas de yogurt no hay regalo. Disee un algoritmo que determine el importe de la compra, el importe del descuento, el importe a pagar y el obsequio (agenda 2010, lapicero o ninguno) por la compra de cierta cantidad de unidades de un misma marca de yogurt.

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

Estructura de Seleccin Doble Encadenada if else - if


1. Disee un programa que determine le categora de un estudiante en base a su promedio ponderado de acuerdo a la siguiente tabla: Promedio 17 14 pero < 17 12 pero < 14 < 12 2. Categora A B C D

Un supermercado vende aceite en botellas de 1 litro a los precios por litro dados en la siguiente tabla: Cdigo Primor Girasol Cil Cocinero Precio por litro S/. 5.99 S/. 5.50 S/.4.50 S/. 4.70

Como oferta, el supermercado ofrece un porcentaje de descuento sobre el importe de la compra de acuerdo a la siguiente tabla: Cantidad de litros 10 7 pero < 10 4 pero < 7 < 4 Descuento 12.5% 10.0% 7.5% 5.0%

Disee un algoritmo que determine el importe de la compra, el importe del descuento y el importe a pagar por la compra de cierta cantidad de litros de una misma marca de aceite. 3. El ndice de masa corporal (IMC) permite medir el grado de sobrepeso u obesidad de una persona. El IMC de una persona se calcula con la frmula:

IMC

peso estatura 2

estando el peso en kilogramos y la estatura en metros. En base al valor del IMC, se obtiene el grado de obesidad de la persona de acuerdo a la tabla adjunta. Disee un algoritmo que determine el grado de obesidad de una persona conociendo su peso y su estatura.

CIBERTEC

CARRERAS PROFESIONALES

IMC < 20 20 pero < 25 25 pero < 27 27

Grado de obesidad Delgado Normal Sobrepeso Obesidad

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

Estructura de Seleccin Mltiple switch


1. Una heladera vende helados a los precios unitarios dados en la siguiente tabla: Helado Sol Fresa Mar Rico Precio unitario S/. 1.5 S/. 2.0 S/. 1.7 S/. 2.5

Disee un algoritmo que determine el importe a pagar por la compra de cierta cantidad de helados del mismo tipo. 2. Reemplace la estructura if...else...if por la estructura switch. Considere que n es de tipo int.
if( n == 0 ) z = 1; else if( n == 7 || n == 4 ){ z = 2; if( a < b) z = 7; } else if( n == 5 ) z = 5; else z = 8;

3.

Disee un algoritmo que califique el puntaje obtenido en el lanzamiento de un dado de acuerdo a la siguiente tabla. Puntaje 12 34 5 6 Calificacin Psimo Regular Muy bien Excelente

4.

La empresa Construya Fcil ha puesto a la venta los libros indicados en la siguiente tabla: Libro Manual Prctico de Construccin Manual Prctico de Instalaciones Sanitarias Manual Prctico de Instalaciones Elctricas Manual Prctico de Acabados Precio en la sede $ 30 $ 27 $ 20 $ 35

Los precios indicados en la tabla se aplican en caso que el pago se efecte en la sede de la empresa. Si el pago se efecta a domicilio, el precio se incrementa en 2%. Dada una compra de cierta cantidad de unidades de un mismo ttulo de libro, disee un algoritmo que determine el importe total a pagar y el precio unitario pagado por cada libro.

CIBERTEC

CARRERAS PROFESIONALES

10

Mtodos tipo void


1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla: Producto P1 P2 P3 Precio S/. 15.0 S/. 17.5 S/. 20.0

Como oferta la tienda ofrece un regalo de acuerdo a la siguiente tabla: Unidades adquiridas 1 a 25 26 a 50 Ms de 50 Regalo un lapicero un cuaderno una agenda

Disee un programa que determine el importe a pagar y el regalo para un cliente de la tienda. Solucin 1:- Declare todas las variables como globales y use mtodos tipo void. Solucin 2:- Declare todas las variables como locales y use mtodos tipo void. 2. Determine que se imprime al ejecutar el mtodo procesar correspondiente a un botn de un programa:
void procesar(){ int a = 5, b = 10, c = 5; metodo1(a, b, c+1); metodo2(c); } void metodo1(int p, int q, int r){ int s; s = p+q+r; txtS.append(s + "\n"); } void metodo2(int c){ txtS.append(c + "\n"); metodo3(c+2); } void metodo3(int x){ txtS.append(x + "\n"); }

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

11

Mtodos con valor de retorno


1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla: Producto P1 P2 P3 Precio S/. 15.0 S/. 17.5 S/. 20.0

Como oferta la tienda ofrece un regalo de acuerdo a la siguiente tabla: Unidades adquiridas 1 a 25 26 a 50 Ms de 50 Regalo un lapicero un cuaderno una agenda

Disee un programa que determine el importe a pagar y el regalo para un cliente de la tienda. Declare todas las variables como locales y use mtodos con valor de retorno para cada una de las entrada y para cada uno de los clculos 2. En un parque de diversiones un juego consiste en efectuar 20 lanzamientos de una pelota a uno de cuatro arcos de diferentes tamaos. Por cada gol anotado se recibe cierta cantidad de puntos de acuerdo a la siguiente tabla: Arco Pequeo Mediano Grande Extra Grande Puntos por gol 6 4 3 2

Luego en base al puntaje total obtenido se efecta un obsequio de acuerdo a la siguiente tabla: Puntaje total 0a9 10 a 39 Ms de 39 Obsequio Ninguno Peluche Reloj

Disee un programa que determine el puntaje total obtenido por un jugador y el premio que le corresponde. Declare todas las variables como locales y use mtodos con valor de retorno para cada una de las entrada y para cada uno de los clculos.

CIBERTEC

CARRERAS PROFESIONALES

12

Contadores y acumuladores
1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla: Producto P1 P2 P3 Precio 21.5 30.0 15.0

Disee un programa que permita efectuar ventas y muestre luego de cada venta: El importe a pagar. El nmero de ventas efectuadas de cada tipo de producto. El importe total recaudado por cada tipo de producto.

Declare como globales a las variables absolutamente necesarias. 2. Disee un programa que permita registrar una donacin para uno de tres centros de ayuda social: un comedor de nios, una posta mdica o una escuela infantil. El programa mostrar luego de cada donacin: El nmero de donantes por cada centro de ayuda social. El monto total donado por cada centro de ayuda social.
Centro Comedor Posta Escuela Nmero de donantes 20 10 80 Monto total donado 4500.0 1200.0 5750.5

Declare como globales a las variables absolutamente necesarias.

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

13

Estructuras de Repeticin
1. Disee un programa que imprima la siguiente serie en una columna a razn de un trmino por fila. 1, 2, 3, 4, 5, 6, 7, 8, ..., 200 2. Disee un programa que imprima y sume 55 trminos de la siguiente serie. Los trminos sern mostrados en una columna a razn de un trmino por fila. 5, 12, 19, 26, 33, 40, 47, 3. Disee un programa que imprima y sume 100 trminos de la siguiente serie. Los trminos sern mostrados en una columna a razn de un trmino por fila. 2/3, 5/5, 8/7, 11/9, ... 4. Disee un programa que imprima y sume n trminos de la siguiente serie. Los trminos sern mostrados en una columna a razn de un trmino por fila 1/2, 4/4, 7/6, 10/8, ... 5. Disee un programa que simule varios lanzamientos de un dado hasta obtener un seis. Muestre los puntajes del dado conforme se vayan generando y muestre al final cuntos lanzamientos fueron necesarios efectuar Disee un programa que genere nmeros aleatorios del intervalo 10 a 90 hasta obtener un nmero par que cumpla con ser mayor que 45 pero menos que 55. El programa mostrar. 7. Los nmeros generados. La cantidad de nmeros generados La suma de todos los nmeros generados. La cantidad de nmeros generados menores que 50. La cantidad de nmeros generados mayores o iguales que 50

6.

Disee un programa que genere nmeros aleatorios del intervalo 1 a 1000 hasta obtener un nmero impar de dos cifras. El programa mostrar: Los nmeros generados La suma de todos los nmeros generados. La cantidad de nmeros generados del intervalo 1 a 250. La cantidad de nmeros generados del intervalo 251 a 500. La cantidad de nmeros generado del intervalo 501 a 750. La cantidad de nmeros generados del intervalo 751 a 1000.

8.

Disee un programa que genere aleatoriamente las notas de una prctica calificada para 45 alumnos de una seccin y determine la nota promedio de la seccin, la cantidad de alumnos aprobados y la cantidad de alumnos desaprobados. Disee un programa que determine la cantidad de divisores de un nmero natural.

9.

CIBERTEC

CARRERAS PROFESIONALES

14

Tabla 1 - Palabras reservadas abstract bolean break byte base catch char class const continue default do double else extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static strictfp super switch synchronized this throw throws transient try void volatile while assert enum

Tabla 2 - Tipos de datos primitivos Dato carcter entero Tipo char byte short int long float double boolean Bits 16 8 16 32 64 32 64 1 Rango 0 a 65535 -128 a 127 -32768 a 32767 -2147483648 a 2147483647 -9223372036854775808 a 9223372036854775807 -3.4x1038 a -1.4x10-45, 1.4x10-45 a 3.4x1038 -1.7x10308 a -4.9x10-324, 4.9x10-324 a 1.7x10308 true, false

real booleano

Tabla 3 Operadores aritmticos Operador + * / % Significado Resta Suma Multiplicacin Divisin Residuo

CARRERAS PROFESIONALES

CIBERTEC

INTRODUCCIN A LA ALGORITMIA

15

Tabla 4 Operadores lgicos y relacionales Operador == != > < >= <= && || ! Significado Igual a Diferente de Mayor que Menor que Mayor o igual que Menor o igual que y o no

Tabla 5 Operadores de incremento y decremento Operador


++ --

Uso
a++; a--;

Equivalencia
a = a + 1; a = a + 1;

Tabla 6 Operadores de asignacin compleja Operador


+= -= *= /=

Ejemplo
a a a a += -= *= /= b; b; b; b;

Equivalencia
a a a a = = = = a a a a + * / b; b; b; b;

CIBERTEC

CARRERAS PROFESIONALES