Búsqueda de Google

Google

domingo, 4 de mayo de 2008

Ejercicios - Estructuras de Control

Ejercicios

1. Implementar en computadora los ejemplos de Selección Simple y Selección Múltiple
presentados en los capítulos correspondientes.

2. Implementar un programa en Java que genere dos valores enteros al azar y despliegue
en la salida estándar el mayor de ellos.

3. Implementar un programa en Java que genere tres valores enteros al azar y despliegue
en la salida estándar el mayor de ellos.

4. Implementar un programa en Java que genere dos valores enteros al azar llamados a y
b. El programa debe desplegar los valores de a y b y luego calcular y desplegar en
pantalla el cociente y el resto de dividir a entre b. Antes de hacer los cálculos, se debe
chequear que b sea distinto de cero. En caso contrario, se debe desplegar un mensaje
de error indicando que no es posible resolver el problema.

5. Dada la siguiente tabla:





















Nota Calificación
0-3 Reprobado
4-7 Aceptable
8-11 Bueno
12 Excelente

Dada una nota, se desea emitir por pantalla la calificación correspondiente. ¿Puede
resolverse de dos maneras distintas, con estructuras de control diferentes? En caso
afirmativo, implemente dos programas en Java que lo resuelvan. La nota será generada al
azar y emitida por pantalla antes de la calificación correspondiente.

6. Considere el estado de una botella:

















CapacidadEstado
0 - 0.3Vacía
0.4 - 0.7Media
0.8 - 1Llena

Dada una capacidad, se desea emitir por pantalla el estado correspondiente.
¿Puede resolverse de dos maneras distintas, con estructuras de control diferentes?
En caso afirmativo, implemente dos programas en Java que lo resuelvan. La capacidad
de la botella será generada al azar y emitida por pantalla antes del estado
correspondiente.

7. Un restaurante que sólo trabaja viernes, sábados y domingos sirve el siguiente menú
de comidas dependiendo del día y hora de la semana, según la siguiente tabla:





























Día y HoraComida
Viernes Antes de 16 hsPollo
Viernes Luego de 16 hsEnsaladas
Sábado Antes de 12 hsCarnes
Sábado Entre 12 y 20 hsMinutas
Sábado Luego de 20 hsCopetín
Domingo Todo el díaPastas

Se desea implementar un programa en Java que, dados un día y una hora, emita un
mensaje indicando cuál es el menú que corresponde servir. El día de la semana será
representado mediante un valor entero (entre 1 y 7) generado al azar. La hora será
representada mediante un valor real (entre 0 y 24) generado al azar. En caso de que el día de la semana no corresponda a ninguno de los presentados en la tabla, se debe
emitir un mensaje que diga "Gracias, vuelva otro día". Antes de emitir la comida
correspondiente, se debe previamente desplegar el día y hora generados.

Más Ejercicios sobre Estructuras de Control
Resolver los siguientes ejercicios eligiendo cuidadosamente las estructuras de control a utilizar en cada caso.

Ejercicio 1
Implementar en computadora los ejemplos de Iteración con control previo, Iteración con
control posterior, e Iteración por subrangos presentados en los capítulos correspondientes.

Ejercicio 2
Se desea Implementar un programa en Java que despliegue en pantalla todos los números
enteros entre 1 y 50.
a. Resolverlo desplegando los enteros en orden creciente
b. Resolverlo desplegando los enteros en orden decreciente

Ejercicio 3
Implementar un programa en Java que genere un entero n al azar entre 1 y 9. El programa
debe desplegar en pantalla todos los enteros múltiplos de n que existan entre 1 y 50.
Ejemplo: Para n = 8, el programa debe desplegar: 8,16,24,32,40,48.

Ejercicio 4
Se desea Implementar un programa en Java que genere una secuencia de enteros al azar entre
0 y 10. El programa debe desplegar en pantalla todos aquellos enteros generados que sean
pares. Además, el programa debe ir contando la cantidad de enteros pares que se vayan
generando.
No se sabe cuántos elementos va a tener la secuencia, pero se debe detener el procesamiento
descrito cuando se genere el número cero. Al finalizar, se debe desplegar en pantalla la
cantidad total de números pares generados.
a. Resolverlo considerando al cero como un número par.
b. Resolverlo no considerando al cero como un número par.
Ejemplo:
Si la secuencia generada es: 2, 8, 7, 1, 4, 5, 8, 9, 0, entonces:
En el primer caso se debe desplegar 2, 8, 4, 8, 0 y contar 5 valores.
En el segundo caso se debe desplegar 2, 8, 4, 8 y contar 4 valores.

Ejercicio 5
Implementar un programa en Java que genere un entero m al azar. El programa debe
desplegar en pantalla el entero generado, y posteriormente debe calcular y desplegar la suma
de todos los enteros existentes entre 1 y m.
Ejemplo:
Para m = 7, la suma solicitada es 28 (1+2+3+4+5+6+7)

Ejercicio 6
Implementar un programa en Java que genere tres números enteros al azar (llamados día,
mes, año). Estos tres números enteros representarán una fecha. El entero día debe ser
generado entre 1 y 31. El entero mes debe ser generado entre 1 y 12. El entero año debe ser
generado entre 1900 y 2100. Una vez generados los tres valores, el programa debe desplegar
los valores generados y determinar si representan una fecha válida o no. Para este ejercicio se
consideran bisiestos los años que son múltiplos de cuatro.
Ejemplos:
día = 10, mes = 10, año = 1977 es una fecha válida.
día = 30, mes = 2, año = 2004 no es una fecha válida.

Ejercicio 7
Implementar un programa en Java que genere dos enteros a y b al azar. a entre 1 y 10, b entre
20 y 50. El programa debe desplegar en pantalla los valores generados y además debe
desplegar todos los múltiplos de a que existan entre 1 y b.
Ejemplo:
Para a = 4, b = 37, se debe desplegar: 4, 8, 12, 16, 20, 24, 28, 32, 36

Ejercicio 8
Implementar un programa en Java que genere una secuencia de enteros al azar entre 0 y 10. El
programa debe ir desplegando cada entero en pantalla junto con un mensaje que diga si es par
o no lo es. Además, el programa debe ir sumando todos los valores impares que se vayan
generando. El procesamiento debe detenerse en el momento en que la suma supere el valor
25. Al finalizar, el programa debe desplegar en pantalla la suma calculada.
Ejemplo:
Una posible ejecución sería la siguiente:
7 – impar
2 – par
4 – par
3 – impar
9 – impar
6 – par
1 – impar
3 – impar
8 – par
5 – impar
El procesamiento se detuvo en el 5 porque en ese instante la suma de todos los impares
generados superó a 25 (7+3+9+1+3+5=28)

Ejercicio 9
Implementar un programa en Java que genere dos enteros a y b al azar, ambos entre 1 y 30. El
programa debe desplegar los valores generados y posteriormente debe calcular la potencia de
ab.
Ejemplo:
Para a = 5, b = 3, el programa debe calcular 125.

Ejercicio 10
Implementar un programa en Java que genere al azar una secuencia de letras minúsculas,
desplegándolas en pantalla. El programa debe contar la cantidad total de letras vocales
generadas. El procesamiento debe finalizar cuando se genere la letra z o cuando se hayan
generado 10 letras, lo que ocurra primero. Al final, se debe desplegar la cantidad total de
letras vocales generadas. Para generar una letra minúscula al azar, hacer:
letra = (char) ((Math.random() * 26) + 'a');
Ejemplos:
Si la secuencia generada es: f, e, t, a, s, e, m, z entonces se debe desplegar un 3. Nótese que
en este caso la secuencia finalizó porque se generó la letra z en el octavo lugar de la secuencia.
Si la secuencia generada es: h, t, a, u, n, o, p, e, i, w entonces se debe desplegar un 5. Nótese
que en este caso la secuencia finalizó porque generaron 10 letras antes de que se generase la
z.

Ejercicio 11
Implementar un programa en Java que genere al azar dos enteros m (entre 1 y 10) y n (entre 1
y 30). El programa debe desplegar en pantalla los valores generados y posteriormente debe
dibujar un rectángulo de m filas por n columnas formado por asteriscos.
Ejemplo:
Para m = 4 y n = 15, el programa debe dibujar el siguiente rectángulo:
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *

Ejercicio 12
Implementar un programa en Java que genere al azar un entero n (entre 1 y 20). El programa
debe desplegar en pantalla el entero generado y posteriormente debe dibujar un triángulo de
n columnas formado por asteriscos, según se muestra en el ejemplo.
Ejemplo:
Para n = 10, el programa debe dibujar el siguiente triángulo:
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*

Ejercicio 13
Indica cuáles serán los valores desplegados por el siguiente programa al ejecutarlo. Resuelve
este ejercicio sin utilizar computadora, sino ejecutándolo manualmente y anotando los
resultados. Luego verifica los mismos utilizando la computadora. ¿Encontraste algún problema
durante la ejecución?
Descargar código fuente.

Ejercicio 14
Indica cuáles serán los valores desplegados por el siguiente programa al ejecutarlo. Resuelve
este ejercicio sin utilizar computadora, sino ejecutándolo manualmente y anotando los
resultados. Luego verifica los mismos utilizando la computadora. ¿Encontraste algún problema
durante la ejecución?
Descargar código fuente.

Ejercicio 15
Indica cuáles serán los valores desplegados por el siguiente programa al ejecutarlo. Resuelve
este ejercicio sin utilizar computadora, sino ejecutándolo manualmente y anotando los
resultados. Luego verifica los mismos utilizando la computadora. ¿Encontraste algún problema
durante la ejecución?
Descargar código fuente.