[Inf 140] Guia1 2008 01

3

Click here to load reader

Transcript of [Inf 140] Guia1 2008 01

Page 1: [Inf 140]   Guia1 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

Guía Nº 1 – Introducción a los Algoritmos

Utilizando Estructuras de Control Selectivas (de acuerdo al caso), desarrollar un algoritmo

para cada uno de los siguientes problemas.

1. Calcular el perímetro de una circunferencia. 2. Calcular el perímetro ó el área de una circunferencia. 3. Calcular el perímetro, el área, ó la diagonal circunscrita en un rectángulo. 4. Calcular el perímetro y el área para: una circunferencia, un rectángulo, ó un triángulo. 5. Para un valor numérico X, desarrollar un algoritmo que permita calcular el valor de la

función f(x), tal que:

( ) 52 −+= xxxf

Se debe indicar si el resultado es positivo o negativo. 6. Desarrollar un algoritmo que permita convertir una temperatura en grados Celsius a grados

Kelvin ó a grados Fahrenheit. 7. Desarrollar un algoritmo que permita convertir una temperatura en grados Fahrenheit ó en

grados Kelvin a una temperatura en grados Celsius. 8. Determinar el valor mínimo y el máximo entre 3 valores ingresados. 9. Un futuro proyecto de ley pretende, en base a motivos de interés nacional, incentivar la

compra de ciertos productos en el mercado interno. Es por esto que se contempla la existencia de un IVA diferenciado para algunos bienes de consumo, de acuerdo con lo siguiente:

Considerando la tabla anterior, desarrollar un algoritmo que determine el precio final para un producto ingresado del tipo “X”, mediante la incorporación en su precio del valor de IVA respectivo.

Asignatura: INF 140 - Informática 1 Semestre: Primer Semestre - 2008

Profesores: Pamela Hermosilla Monckton E-mail: [email protected]

Daniel Cabrera Paniagua E-mail: [email protected]

Ayudantes: Daniel Gómez C. E-mail: [email protected]

Enrique Urra C. E-mail: [email protected]

Tipo de Producto Descripción IVA

A Libros y revistas Exento de IVA

B Material de estudio (cuadernos, lápices de todo tipo, gomas de borrar, reglas, etc.)

15%

C Calculadoras 12%

Page 2: [Inf 140]   Guia1 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

10. Ante las importantes alzas observadas en el precio del pan, la panadería “Panecillo” ha decidido disponer una oferta a sus fieles clientes, y que permitirá también extender su actual clientela. La oferta consiste en un descuento al precio total de la compra dominical de pan, en base a la cantidad de pan comprada durante la semana. La siguiente tabla muestra los posibles descuentos:

Cantidad de Compra

(Kg./semana)

% de descuento en la compra dominical

4 5%

7 10%

10 15%

14, ó mayor 20%

Suponiendo que el kilo de pan tiene un valor de $1.180, desarrollar un algoritmo que permita calcular el valor total a pagar por el cliente en su compra dominical de pan. Asumir que:

- La cantidad de pan comprada en el día domingo se puede sumar a la cantidad de pan comprada hasta ese momento en la semana.

- En el día domingo, cada cliente compra exactamente 1 kg. de pan.

11. Gracias a intensas labores de espionaje realizadas por expertos en el área, la panadería rival llamada “Pan-dora”, ubicada frente a la panadería “Panecillo”, ha decidido impulsar una agresiva campaña que pretende atraer más clientes a su tienda. Esta campaña consiste en premiar a los clientes en base a la cantidad de dinero que gasta cada uno de ellos en su establecimiento durante la semana. Para esto, se cuenta con la siguiente tabla de referencia:

Dinero gastado en la semana Premio

$7.500 1 empanada de pino

$10.000 1 empanada de pino + 1 bebida en lata (350 cc.)

$12.500 2 empanadas de pino

$15.000, ó mayor 2 empanadas de pino + 2 bebidas en lata (350 cc.)

En base a lo anterior, desarrollar un algoritmo que determine el premio para cada cliente (asumir que la cantidad de dinero gastado en el día domingo se puede sumar a la cantidad de dinero gastado hasta ese momento en la semana).

Page 3: [Inf 140]   Guia1 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

Utilizando Estructuras de Control Repetitivas (de acuerdo al caso), desarrollar un

algoritmo para cada uno de los siguientes problemas.

12. Desarrollar un algoritmo que calcule el perímetro y el área de n circunferencias de radio r. 13. Desarrollar un algoritmo que permita asignar valores a la función f(x). La asignación de

valores debe estar entre los números 1 y 15. Cada vez que el resultado dé un número par, el valor de x debe ser impreso.

( ) 102 2 +−= xxxf

14. Obtener un algoritmo que permita multiplicar dos números enteros por medio de sumas

sucesivas. 15. Para un número ingresado, indicar cuáles son todos sus divisores. 16. Diseñar un algoritmo que determine la cantidad de números impares menores a un número

ingresado. También es requerido indicar la suma de todos aquellos números impares. 17. Desarrollar un algoritmo que, para un número ingresado X, muestre por pantalla su tabla de

multiplicar (desde 1 hasta X). 18. Desarrollar un algoritmo que determine todos los números primos existentes entre 1 y un

número ingresado. 19. Desarrollar un algoritmo que permita el ingreso de n números, y que indique cuál fue el

menor número ingresado. 20. Desarrollar un algoritmo que permita al usuario ingresar 5 números diferentes. Luego de

esto, cada uno de estos números puede ser ingresado n veces (hasta que el usuario decida no ingresar más números), y el algoritmo debe mostrar el valor que más veces fue ingresado.

21. Desarrollar un algoritmo que realice sumas parciales para n números ingresados. Si la suma parcial es múltiplo de 10, el algoritmo se debe detener. Si no es el caso, el algoritmo debe recibir un nuevo número, y sumarlo al resultado actual. Al término, el algoritmo debe indicar el resultado final de la suma de todos los números ingresados, y la cantidad total de números ingresados. (Nota: no está permitido ingresar números múltiplos de 10).

22. Desarrollar un algoritmo para un caso similar al problema anterior, pero considerando que si se ingresan los números 3, 5 ó 7, éstos deben ser rechazados (no se suman al resultado parcial). Al término, el algoritmo debe indicar el resultado final de la suma de todos los números ingresados, la cantidad total de números ingresados, y la cantidad de números no considerados en el resultado. (Nota: no está permitido ingresar números múltiplos de 10).

Primer Semestre, 2008.