Universidad de Costa Rica
Escuela de Ciencias de la
Computación e Informática
|
|
CI-0202 Principios de Informática
Caída matricial de una piedra
En el primer curso de física le enseñaron la
fórmula para calcular la trayectoria de un proyectil que
sale hacia arriba a velocidad "V
" con un
ángulo "θ", gravedad "g
" y altura
"h
". Usando esa fórmula, calcule la
trayectoria del proyectil y póngala dentro de una matriz
rectangular.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 14
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0 | | | | | | X | X | | | | | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1 | | | | X | X | | | X | | | | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
2 | | | X | | | | | | X | | | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
3 | | X | | | | | | | | | | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
4 | X | | | | | | | | | X | | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
5 | | | | | | | | | | | X | | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
6 | | | | | | | | | | | | X | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
7 | | | | | | | | | | | | | X | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
8 | | | | | | | | | | | | | X | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
9 | | | | | | | | | | | | | | X |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|
Luego de generar en memoria su matriz, procede a grabarla en la
salida estándar. Suponga que el proyectil comienza en la
mitad de la columna izquierda; luego su rutina prodrá
usarse en la construcción de un juego que busque lograr que
la piedra caiga en la esquina inferior derecha, que corresponde a
la última casilla de la matriz, en la última fila y
columna. Recuerde que si el valor de "N
" es muy
pequeño, la trayectoria del proyectil se verá
quebrada y extraña, pero con un valor más grande de
"N
" se obtendrá una figura mucho más
realista.
Para que la trayectoria del proyectil se vea interesante en una
pantalla de televión, las dimensiones de la matriz tienen
que respetar la proporción 4:3 de la televión NTSC,
que usualmente tiene (W*H)==(640*480)
pixeles.
Además de su programa, recuerde que debe entregar
también la documentación.
- Consulta:
- Profe:
¿Tenemos que programar un
método que modele como una matriz la forma que
tomaría el proyectil para después
implementar también un juego cuya en el que halla que
llegar la piedra a un punto, para poder verlo en un televisor
NTSC? ¿Cómo es qué es?
- Respuesta:
- Deben implementar un método
llenaPiedra()
que reciba una matriz que tenga la proporción 4:3.
Además, su método debe recibir el ángulo y la
velocidad de la piedra, con lo que deben calcular la trayectoria
del proyectil. Si llenan inicialmente toda la matriz de espacios
en blanco ' '
, luego pueden marcar dentro de la
matriz la trayectoria del proyectil poniendo una letra
'X'
en la casilla apropiada, como se muestra en la
figura.
Antes de implementar llenaPiedra()
deben definir su
especificación. Por eso, necesitan determinar
cuáles parámetros deben incluir, y también
deben escribir qué hace la esta rutina. Idealmente,
debieran también definir los datos de prueba para probar su
módulo con el botón
[Test] de
DrJava, pero este
requerimiento lo dejaremos para una tarea posterior.
No hace falta que implementen el juego. Tampoco es necesario que
suban el resultado de correr su programa a
Youtube, aunque si lo desean nada
puede impedirles que lo hagan.
- Consulta:
- Profe:
Si solo tenemos la velocidad, el ángulo, la altura inicial
y la gravedad, ¿debemos calcular el tamaño que debe
tener la matriz para lograr que toda la trayectoria quede dentro
de la matriz? Para eso necesitamos encontrar el punto en el que el
proyectil cae y cuál es la altura máxima que
alcanza.
- Respuesta:
- No. El tamaño de la matriz está dado de
antemano. Si alguno de los datos es demasiado grande o
pequeño, en la matriz se puede mostrar solo una parte de la
trayectoria del proyectil. Basta a graficar todo lo que sí
queda dentro de la matriz.
Entrega de Tareas
Tiempo de entrega: |
7 Días |
Modalidad: |
En parejas |
|
Soluciones
Adolfo Di Mare <adolfo@di-mare.com>.
Copyright © 2009
Derechos de autor reservados © 2009