6.8

Un estacionamiento cobra una cuota mínima de $2.00 por estacionarse hasta tres horas. El estacionamiento 

cobra $0.50 adicionales por cada hora o 

fracción que se pase de tres horas. El cargo máximo para cualquier periodo dado 

de 24 horas es de $10.00. Suponga que ningún automóvil se estaciona durante más de 24 horas a la vez. Escriba una 
aplicación que calcule y muestre los cargos por estacionamiento para cada cliente que se haya estacionado ayer. Debe 
introducir las horas de estacionamiento para cada cliente. El programa debe mostrar el cargo para el cliente actual y 
debe calcular y mostrar el total corriente de los recibos de ayer. El programa debe utilizar el método 

calcularCargos

 

para determinar el cargo para cada cliente.

6.9

Una aplicación del método 

Math.floor

 es redondear un valor al siguiente entero. La instrucción

 

y = Math.floor( x + 

0.5

 );

redondea el número 

x

al entero más cercano y asigna el resultado a 

y

. Escriba una aplicación que lea valores 

double

 y 

que utilice la instrucción anterior para redondear cada uno de los números a su entero más cercano. Para cada número 
procesado, muestre tanto el número original como el redondeado.

6.10 

Math.floor

 puede utilizarse para redondear un número hasta un lugar decimal específi co. La instrucción

 

y = Math.floor( x * 

10

 + 

0.5

 ) / 

10

;

redondea 

x

 en la posición de las décimas (es decir, la primera posición a la derecha del punto decimal). La instrucción 

 

y = Math.floor( x * 

100

 + 

0.5

 ) / 

100

;

redondea 

x

 en la posición de las centésimas (es decir, la segunda posición a la derecha del punto decimal). Escriba una 

aplicación que defi na cuatro métodos para redondear un número 

x

 en varias formas:

a) 

redondearAInteger( numero )

 b) 

redondearADecimas( numero )

 c) 

redondearACentesimas( numero )

 d) 

redondearAMilesimas( numero )

Para cada valor leído, su programa debe mostrar el valor original, el número redondeado al entero más cercano, el 
número redondeado a la décima más cercana, el número redondeado a la centésima más cercana y el número redon-
deado a la milésima más cercana.

6.11 

Responda a cada una de las siguientes preguntas:

 a) 

¿Qué 

signifi ca elegir números “al azar”?

 

b) ¿Por qué es el método 

nextInt

 de la clase 

Random

 útil para simular juegos al azar?

 

c) ¿Por qué es a menudo necesario escalar o desplazar los valores producidos por un objeto 

Random

?

 

d) ¿Por qué es la simulación computarizada de las situaciones reales una técnica útil?

6.12 

Escriba instrucciones que asignen enteros aleatorios a la variable 

n en los siguientes rangos:

 a) 

≤ 

n ≤ 2.

 b) 

≤ 

n ≤ 100.

 c) 

≤ 

n ≤ 9.

 d) 

1000 

≤ 

n ≤ 1112.

 e) 

–1 

≤ 

n ≤ 1.

 f) 

–3 

n≤11.

6.13 

Para cada uno de los siguientes conjuntos de enteros, escriba una sola instrucción que imprima un número al 

azar del conjunto:
 

a) 2, 4, 6, 8, 10.

 

b) 3, 5, 7, 9, 11.

 

c) 6, 10, 14, 18, 22.

6.14 

Escriba un método llamado 

enteroPotencia( base, exponente )

 que devuelva el valor de

 base 

exponente

Por ejemplo, 

enteroPotencia( 3, 4 )

 calcula 

3

4

 (o 

3 * 3 * 3 * 3

 ). Suponga que 

exponente

 es un entero positivo 

distinto de cero y que 

base

 es un entero. El método 

enteroPotencia

 debe utilizar un ciclo

 for

 o 

while

 para controlar 

el cálculo. No utilice ningún método de la biblioteca de matemáticas. Incorpore este método en una aplicación que lea 
valores enteros para 

base

 y 

exponente

, y que realice el cálculo con el método 

enteroPotencia

.

Ejercicios

255

06_MAQ_CAP_06.indd255

4/19/081:22:29AM