Introduccion Algoritmia Guia Problemas

15
Introducción a la Algoritmia Guía de Problemas Primer ciclo 2012

Transcript of Introduccion Algoritmia Guia Problemas

  • Introduccin a la Algoritmia Gua de Problemas

    Primer ciclo 2012

  • 2

    CARRERAS PROFESIONALES CIBERTEC

    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:

  • INTRODUCCIN A LA ALGORITMIA 3

    CIBERTEC CARRERAS PROFESIONALES

    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.

    9. 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.

    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.

  • 4

    CARRERAS PROFESIONALES CIBERTEC

    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.

  • INTRODUCCIN A LA ALGORITMIA 5

    CIBERTEC CARRERAS PROFESIONALES

    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.

    2. 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.

    3. 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.

    4. Disee un algoritmo que determine la categora de un estudiante en base a su

    promedio ponderado, de acuerdo a la siguiente tabla:

    Promedio Categora

    17 A

    14 pero < 17 B

    12 pero < 14 C

    < 12 D

    5. Disee un algoritmo que determine la edad menor de tres edades ingresadas.

    6. Una tienda vende cuatro tipos de productos a los precios unitarios dados en la

    siguiente tabla:

    Cdigo Precio Unitario

    101 S/. 17.5

    102 S/. 25.0

    103 S/. 15.5

    104 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 Descuento

    1 a 10 5.0%

    11 a 20 7.5%

    21 a 30 10.0%

    Ms de 30 12.50%

  • 6

    CARRERAS PROFESIONALES CIBERTEC

    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 Precio por litro

    Gloria S/. 3.90

    Pura Vida S/.3.80

    Laive S/. 4.20

    Vigor 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 Descuento

    1 a 10 5.0%

    11 a 20 7.5%

    21 a 30 10.0%

    Ms de 30 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.

  • INTRODUCCIN A LA ALGORITMIA 7

    CIBERTEC CARRERAS PROFESIONALES

    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 Categora

    17 A

    14 pero < 17 B

    12 pero < 14 C

    < 12 D

    2. Un supermercado vende aceite en botellas de 1 litro a los precios por litro dados

    en la siguiente tabla:

    Cdigo Precio por litro

    Primor S/. 5.99

    Girasol S/. 5.50

    Cil S/.4.50

    Cocinero 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 Descuento

    10 12.5%

    7 pero < 10 10.0%

    4 pero < 7 7.5%

    < 4 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:

    2estatura

    pesoIMC

    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.

  • 8

    CARRERAS PROFESIONALES CIBERTEC

    IMC Grado de obesidad

    < 20 Delgado

    20 pero < 25 Normal

    25 pero < 27 Sobrepeso

    27 Obesidad

  • INTRODUCCIN A LA ALGORITMIA 9

    CIBERTEC CARRERAS PROFESIONALES

    Estructura de Seleccin Mltiple switch

    1. Una heladera vende helados a los precios unitarios dados en la siguiente tabla:

    Helado Precio unitario

    Sol S/. 1.5

    Fresa S/. 2.0

    Mar S/. 1.7

    Rico 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 Calificacin

    1 2 Psimo

    3 4 Regular

    5 Muy bien

    6 Excelente

    4. La empresa Construya Fcil ha puesto a la venta los libros indicados en la

    siguiente tabla:

    Libro Precio en la sede

    Manual Prctico de Construccin $ 30

    Manual Prctico de Instalaciones Sanitarias $ 27

    Manual Prctico de Instalaciones Elctricas $ 20

    Manual Prctico de Acabados $ 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.

  • 10

    CARRERAS PROFESIONALES CIBERTEC

    Mtodos tipo void

    1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla:

    Producto Precio

    P1 S/. 15.0

    P2 S/. 17.5

    P3 S/. 20.0

    Como oferta la tienda ofrece un regalo de acuerdo a la siguiente tabla:

    Unidades adquiridas Regalo

    1 a 25 un lapicero

    26 a 50 un cuaderno

    Ms de 50 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");

    }

  • INTRODUCCIN A LA ALGORITMIA 11

    CIBERTEC CARRERAS PROFESIONALES

    Mtodos con valor de retorno

    1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla:

    Producto Precio

    P1 S/. 15.0

    P2 S/. 17.5

    P3 S/. 20.0

    Como oferta la tienda ofrece un regalo de acuerdo a la siguiente tabla:

    Unidades adquiridas Regalo

    1 a 25 un lapicero

    26 a 50 un cuaderno

    Ms de 50 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 Puntos por gol

    Pequeo 6

    Mediano 4

    Grande 3

    Extra Grande 2

    Luego en base al puntaje total obtenido se efecta un obsequio de acuerdo a la siguiente tabla:

    Puntaje total Obsequio

    0 a 9 Ninguno

    10 a 39 Peluche

    Ms de 39 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.

  • 12

    CARRERAS PROFESIONALES CIBERTEC

    Contadores y acumuladores

    1. Una tienda vende tres tipos de productos a los precios unitarios dados en la siguiente tabla:

    Producto Precio

    P1 21.5

    P2 30.0

    P3 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.

    Declare como globales a las variables absolutamente necesarias.

    Centro Nmero de donantes Monto total donado

    Comedor 20 4500.0

    Posta 10 1200.0

    Escuela 80 5750.5

  • INTRODUCCIN A LA ALGORITMIA 13

    CIBERTEC CARRERAS PROFESIONALES

    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

    6. 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.

    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 7. 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.

    9. Disee un programa que determine la cantidad de divisores de un nmero natural.

  • 14

    CARRERAS PROFESIONALES CIBERTEC

    Tabla 1 - Palabras reservadas

    abstract default if private this

    bolean do implements protected throw

    break double import public throws

    byte else instanceof return transient

    base extends int short try

    catch final interface static void

    char finally long strictfp volatile

    class float native super while

    const for new switch assert

    continue goto package synchronized enum

    Tabla 2 - Tipos de datos primitivos

    Dato Tipo Bits Rango

    carcter char 16 0 a 65535

    entero byte 8 -128 a 127

    short 16 -32768 a 32767

    int 32 -2147483648 a 2147483647

    long 64 -9223372036854775808 a 9223372036854775807

    real float 32 -3.4x1038 a -1.4x10-45, 1.4x10-45 a 3.4x1038

    double 64 -1.7x10308 a -4.9x10-324, 4.9x10-324 a 1.7x10308

    booleano boolean 1 true, false

    Tabla 3 Operadores aritmticos

    Operador Significado

    - Resta

    + Suma

    * Multiplicacin

    / Divisin

    % Residuo

  • INTRODUCCIN A LA ALGORITMIA 15

    CIBERTEC CARRERAS PROFESIONALES

    Tabla 4 Operadores lgicos y relacionales

    Operador Significado

    == Igual a

    != Diferente de

    > Mayor que

    < Menor que

    >= Mayor o igual que