Vous êtes sur la page 1sur 29

Conceptos fundamentales de Java

2-4
Rotación y asignación aleatoria

Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados.
Objetivos
En esta lección se abordan los siguientes objetivos:
• Correlacionar sentencias de guión gráfico con tareas de
ejecución del programa
• Agregar una sentencia de control al editor de códigos
• Utilizar números aleatorios para definir aleatoriamente
el movimiento

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 3
Rotación y asignación aleatoria
Desarrollo del programa mediante un
enfoque en sentido descendente
• Al igual que un constructor utiliza un juego de planos y
sigue una serie de pasos, un programador utiliza un
plan y sigue una serie de pasos para crear un programa.
• Los constructores trabajan con un propósito y definen
objetivos específicos durante la construcción: Que las
habitaciones cuenten con eficiencia energética, que la
casa cumpla con los códigos de construcción, etc.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 4
Rotación y asignación aleatoria
Desarrollo del programa mediante un
enfoque en sentido descendente
• Los programadores también trabajan con un propósito y
definen objetivos, porque sin ellos, no se puede medir
el éxito.
• Otra condición para el objetivo o propósito de una
animación es un escenario de alto nivel, una historia
con un propósito.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 5
Rotación y asignación aleatoria
Pasos para utilizar un enfoque en sentido
descendente de la programación
• Definir el escenario de alto nivel (el propósito o meta
del programa).
• Documentar las acciones paso a paso en un guión
gráfico textual.
• Esto ayuda a comprender totalmente las acciones que
se deben programar.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 6
Rotación y asignación aleatoria
Pasos para utilizar un enfoque en sentido
descendente de la programación
• Crear una tabla para alinear los pasos del guión gráfico
con las instrucciones de programación.
• Revisar la tabla durante el desarrollo de la animación
para asegurarse de que cumple las especificaciones.
• Revisar la tabla según sea necesario.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 7
Rotación y asignación aleatoria
Ejemplo de storyboard textual
• Programar las siguientes acciones en orden:
– El conejito camina.
– Alice dirige la mirada al conejito.
– El conejito dice: "Is this the party!".
– Alice dice: "¡Oh, no!".
– El conejito gira a la izquierda.
– Programar las siguientes acciones
conjuntamente:
• El conejito se aleja rápidamente.
• Alice mueve la cabeza.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 8
Rotación y asignación aleatoria
Alineación del guión gráfico con las
instrucciones de programación
Orden de las Acción del guión
Instrucciones de programación
instrucciones gráfico

Do in order El conejito camina. El conejito avanza 2 metros.

Alice dirige la mirada al


Alice se gira hacia el conejito.
conejito.
El conejito dice: "Is this
El conejito dice: "Is this the party!".
the party!".
Alice dice: "¡Oh, no!". Alice dice: "¡Oh, no!".
El conejito gira a la
El conejito gira a la izquierda 0,25.
izquierda.
El conejito avanza 4 metros en
El conejito se aleja
1 segundo.
Do together rápidamente.
Alice gira la cabeza de izquierda a
Alice mueve la cabeza.
derecha y otra vez a la izquierda.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 9
Rotación y asignación aleatoria
Movimiento de objetos
• El movimiento de objetos es egocéntrico: Los objetos se
mueven en función de la dirección hacia la que estén
colocados.
• Un objeto se puede mover en seis direcciones:
– Hacia arriba
– Hacia abajo
– Hacia adelante
– Hacia atrás
– Hacia la derecha
– Hacia la izquierda

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 10
Rotación y asignación aleatoria
Ejemplos de procedimientos de rotación

Procedimiento Descripción
Gira un objeto hacia la izquierda, derecha,
adelante o atrás respecto a su punto central. Giro
Turn a la izquierda y a la derecha sobre el eje vertical
del objeto; giro hacia delante y hacia atrás sobre
el eje horizontal del objeto.
Un objeto rueda a la izquierda o a la derecha
Roll sobre el punto central con el eje horizontal del
objeto.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 11
Rotación y asignación aleatoria
Comparación de los procedimientos Turn
and Roll
El objeto gira a la izquierda y a la derecha El objeto rueda a la izquierda y a la
sobre su punto central con un eje vertical. derecha sobre su punto central con un
eje horizontal.

El objeto gira hacia delante sobre su El objeto gira hacia atrás sobre su punto
punto central con un eje horizontal. central con un eje horizontal.
(La carta ya estaba (La carta estaba
orientada hacia la orientada hacia la
izquierda. El giro hacia izquierda. El giro hacia
delante ha hecho que se atrás ha hecho que se
incline hacia delante) incline hacia atrás)

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 12
Rotación y asignación aleatoria
Ejemplo de rotación de subpartes
• Algunos objetos tienen subpartes móviles que pueden
girar y rodar.
• El reloj de bolsillo tiene manecillas de horas y minutos
que pueden rodar sobre el punto central del reloj.
• La clave de una rotación correcta es conocer el punto
central de un objeto.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 13
Rotación y asignación aleatoria
Pasos para programar un objeto para que
gire
• Seleccionar la instancia del objeto que
desea girar.
• Arrastrar un procedimiento turn o roll
al editor de códigos.
• Definir el argumento de dirección.
• Definir el argumento de cantidad (1,0 =
un giro o vuelta completo).
*Nota: Se mostrará un indicador de
posición verde para ayudarlo a alinear la
sentencia de programación en la
posición deseada.
JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 14
Rotación y asignación aleatoria
Rotación de subpartes
• Algunos objetos tienen subpartes móviles.
• Por ejemplo, las manecillas del reloj pueden girar o
rodar.
• La rotación se puede aplicar a un objeto completo o
seleccionar subpartes del objeto.
• Las subpartes de un objeto muestran anillos que indican
su rango de movimiento.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 15
Rotación y asignación aleatoria
Pasos para programar las subpartes de un
objeto que desea girar
• Seleccionar la instancia de la subparte del objeto que desea girar.
• Arrastrar un procedimiento turn o roll al editor de códigos.

• Seleccionar el valor de dirección para el argumento de dirección.


• Seleccionar un valor de rotación para el argumento de cantidad
(1,0 = un giro o vuelta completo).

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 16
Rotación y asignación aleatoria
Sentencias de control
• Las sentencias de control definen cómo se ejecutan las
sentencias de programación en el programa.
• myFirstMethod se crea con una sentencia de control Do in order
por defecto.
Procedimiento Descripción
• En él, todas las Ejecutar las sentencias que contiene la
sentencias de Do in order sentencia de control en orden
programación secuencial.

se ejecutan Do together
Ejecutar las sentencias que contiene la
sentencia de control simultáneamente.
secuencialmente Ejecutar las sentencias que contiene la
por defecto. Count sentencia de control un número
determinado de veces.
Ejecutar las sentencias que contiene la
While sentencia de control mientras que se
cumpla una condición especificada.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 17
Rotación y asignación aleatoria
Sentencias de control en el editor de códigos
• Las sentencias de control se encuentran en la parte
inferior del editor de códigos.
• Representan bloques de código en los que se agrupan
sentencias individuales.
• Arrastrar mosaicos de control
al editor de códigos y, a
continuación, agregar
las declaraciones a ellos.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 18
Rotación y asignación aleatoria
Agregar procedimientos a una sentencia de
control
• Arrastrar sentencias de programación nuevas o
existentes a la sentencia de control.
• En el ejemplo que se muestra a continuación, el objeto
de
• Alice en el objeto se moverá hacia delante, girará a la
izquierda y rodará a la
derecha en orden.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 19
Rotación y asignación aleatoria
Consejo: Crear bloques de programación
• Aunque myFirstMethod contiene una sentencia de
control Do in order por defecto, siempre puede agregar
otros mosaicos Do in order al área de programación.
• Esto permite mantener las instrucciones de
programación organizadas en bloques.
• Los bloques se pueden copiar fácilmente en el
portapapeles o moverse de un lugar a otro en un
programa de gran tamaño.
• Las sentencias de control Do in order anidadas afectan
al rendimiento de la animación; facilitan la edición del
programa al programador.
JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 20
Rotación y asignación aleatoria
Sentencias de control Do in order anidadas
• A continuación, se anidan
tres sentencias Do in
order y una sentencia do
together en una cuarta
sentencia Do in order.
• Las sentencias anidadas
agregan una estructura
visual a un programa, de
La anidación es el proceso por el
forma muy similar a la que se coloca algo dentro de otra
que un esquema cosa, como los huevos colocados
incorpora una estructura unos junto a otros en un nido.
a un informe.
JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 21
Rotación y asignación aleatoria
Números aleatorios
• Los números aleatorios son los números generados por
el equipo con un patrón predecible para su secuencia.
• Los números aleatorios se generan dentro de un
determinado rango de números.
• Los equipos pueden necesitar números aleatorios para:
– Seguridad: Por ejemplo, contraseñas generadas
aleatoriamente.
– Simulación: Por ejemplo, modelación de ciencias de la tierra
(es decir, erosión a lo largo del tiempo).

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 22
Rotación y asignación aleatoria
Ejemplos de números aleatorios
• Los números aleatorios se pueden generar dentro de un
amplio rango de números, tanto positivos como
negativos, y pueden incluir números enteros y partes
fraccionarias de un número.
• Ejemplos de números aleatorios:
– 15674
– -6934022
– 0,371
– -89,763

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 23
Rotación y asignación aleatoria
Números aleatorios en las animaciones
• Los animales no se mueven en línea recta en líneas
geométricas. Cambian de dirección ligeramente a
medida que caminan, nadan y vuelan.
• Los números aleatorios se pueden utilizar en el
argumento de distancia de un método para que el
objeto se mueva de forma menos previsible, más como
la vida real.
• Los números aleatorios se suelen
utilizar para crear juegos que necesitan
comportamientos impredecibles.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 24
Rotación y asignación aleatoria
Pasos para utilizar números aleatorios
• Para cualquier argumento numérico, una de las opciones es un
número aleatorio.
• Seleccionar el argumento en la lista desplegable.
• Seleccionar Random.
• Seleccionar nextRandomRealNumberInRange.
• Seleccionar los valores inferior y superior.
• Ejecutar la animación.
• Alice 3 generará de forma
aleatoria un valor dentro del
rango seleccionado al ejecutar
la sentencia.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 25
Rotación y asignación aleatoria
Ejemplo de animación con números
aleatorios
• El conejito avanza una distancia aleatoria hacia arriba y
hacia abajo antes de girar hacia Alice en tiempo de
ejecución.

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 26
Rotación y asignación aleatoria
Terminología
Términos clave que se han utilizado en esta lección:
• Sentencias de control
• Anidada
• Números aleatorios
• Guión gráfico textual

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 27
Rotación y asignación aleatoria
Resumen
En esta lección, debe haber aprendido a:
• Correlacionar sentencias de guión gráfico con tareas de
ejecución del programa
• Agregar una sentencia de control al editor de códigos
• Utilizar números aleatorios para definir aleatoriamente
el movimiento

JF 2-4 Copyright © 2018, Oracle y/o sus filiales. Todos los derechos reservados. 28
Rotación y asignación aleatoria

Vous aimerez peut-être aussi