Documente Academic
Documente Profesional
Documente Cultură
EN ALICE 2.2
TM
PEDRO J. FONSECA SOLANO
PDF Editor
AGRADECIMIENTO
TM
PDF Editor
Contenido
EL MUNDO DE ALICE ...................................................................................................................... 4
MENES ........................................................................................................................................ 6
PLAY, UNDO, REDO, BASURERO Y PORTAPALES ............................................................................. 9
EL MUNDO WORLD ................................................................................................................... 10
AGREGAR OBJETOS ...................................................................................................................... 11
CREACION DE HUMANOIDES ........................................................................................................ 12
EVENTOS...................................................................................................................................... 13
MI PRIMER MTODO: ............................................................................................................... 13
ESTRUCTURAS .......................................................................................................................... 14
CAPTURA DE DATOS EN ALICE 2.2, DESDE EL TECLADO USANDO TIPO NUMRICO ....................... 16
COMO CREAR UN TRIVIA, CON LAS CAPITALES DE CENTROAMRICA ............................................ 26
JUEGO-HELICOPTERO CON NAVEGACIN..................................................................................... 32
MIS EVENTOS HASTA EL MOMENTO: ........................................................................................... 46
CONCEPTO DE FUNCION .............................................................................................................. 57
FUNCIN RANDOM NUMBER EN ALICE ....................................................................................... 65
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
EL MUNDO DE ALICE
Para ingresar a Alice, Usted debe hacer doble clic, con el botn izquierdo del
Ratn sobre el acceso directo a la aplicacin Alice.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
1-MENUS 2-BOTONES
6-EVENTOS
3. MUNDO ( WORLD) 5-PANTALLA
3.1 CAMERA (CAMERA)
3.2 ILUMINACION (LIGHT)
3.3 PISO (GROUND)
7-AGREGAR OBJETOS
8-AREA PROGRAMACIN
4.DETALLES World.my first method
4.1 PROPIEDADES
4.2 METODOS 9-ESTRUCTURAS DE PROGRAMACION
4.3 FUNCIONES
Al principio asusta, se muestrasn muchas cosas, pero vamos a ir poco a poco y paso a paso,
explicando los detalles de las diferentes reas del ambiente.
PDF Editor
Botn Undo, recupera ltima accin realizada hacia atrs
Botn Redo, recupera ltima accin realizada hacia adelante
Basurero, para arrastrar lo que deseemos borrar en el mundo de Alice
Portapapeles, para copiar los deseemos en el mundo de Alice.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
MENES
Preferencias Generales:
Muy importante el
directorio donde Ud.
Guardar y cargar sus
archivo de proyectos, TM
obviamente Ud. Elige la
carpeta que desea.
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Nos interesa determinar el directorio donde se almacenaran las capturas de pantalla que
realicemos, aqu se indica la carpeta o directorio que usted desee. Tambin se puede elegir el
nombre base de los archivos y el formato del mismo, se recomienda JPEG, no ocupan mucho
espacio de disco.
PDF Editor
Ai como todas las estructuras de programacin
que estemos utilizando en los diferentes
mtodos, que tengan los objetos o que
hayamos creado.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Tutorial
Mundos de ejemplo
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Play lo utilizamos, para ejecutar el mundo que hemos construido en Alice, es decir ponemos a
funcionar todo los que hemos construido o ambientado, y los que hemos programado
Para deshacer, la ltima accin que realizamos, en caso de que sea algo que no deseamos, por
ejemplo, cuando borramos una objeto, mtodo o funciones y no queremos hacerlo, con este
botn lo recuperamos.
Hace los mismo que los anterior, solo que tiene una memoria, que nos permite ir unos cuantos
pasos atrs, pero cuidado, si saturamos su capacidad, las acciones nuevas las registrara en la
memoria y probablemente, perderemos informacin, porque le caer encima a la informacin que
ya tenamos y usamos indiscriminadamente este botn.
El basurero, nos sirve para borrar o eliminar los elementos de que deseemos de Alice, funciona
cuando arrastramos el objeto o elemento, deseado al basurero, con excepcin de los objetos en
l la pantalla del visualizacin del mundo.
El portapapeles, nos permite colocar elementos de Alice, arrastrndolos hasta l, para copiarlos en
la memoria del computador y luego pegarlos en el lugar que deseemos.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
EL MUNDO WORLD
Este es el estado del mundo inicial en Alice,
compuesto World (Mundo), Camera (cmara,
light (ilumimacin)y Ground (piso o ambiente).
Al parecer estas dos ventanas estn separadas
pero son una misma, cada vez que usted
selecciona la cmara, iluminacin, piso o
mundo, se mostraran las propiedades del
mismo.
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
AGREGAR OBJETOS
Elementos de la galera
Egipto
Alice tiene alrededor de 35 galeras y cada una de ellas tiene una serie
PDF Editor
de clases, tambin existen galeras donde la clase puede ser
modificada por el usuario. Adems se pueden descargar por medio
internet y hay gran variedad, lugares galeras especificas de
transporte, edificios, personas, etc.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
CREACION DE HUMANOIDES
Se pueden modificar los atributos, para cambiar el cuerpo del o la humanoide, el color de su piel y
de sus ojos. Tambin hay tres tipos de estilo de cabello, respecto a la ropa se pueden seleccionar
vestidos, faldas, pantalones, blusas y zapatos.
TM
PDF Editor
Saludo Camina Confundida
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
EVENTOS
rea de Eventos: Los eventos en Alice, son muy importantes, porque nos
permite hacer muchas cosas, Alice ya trae una serie de
eventos definidos, entre ellos: Cuando el mundo
empieza, cuando una tecla es tocada, cundo hacemos
clic con el ratn en algo, Mientras que algo sea
verdadera, Cuando una variable cambia, Permitir que las
fechas direccionales muevan, entre otros, que nos
ayudan a potenciar nuestra programacin. En otras
palabras nos permite, asociar mtodos o
comportamientos a eventos. Por ejemplo, si deseo que
MI PRIMER MTODO:
TM que
Este es el programa principal de Alice, donde haremos los llamados a los diferentes mtodos,
su vez llamaran a funciones, para lograr los efectos deseados en nuestro mundo. Tenemos
tambin, estructuras y elementos de programacin, como cualquier otro lenguaje, para que
PDF Editor
podamos representar y resolver problemas.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
ESTRUCTURAS
Ejecutar en orden, este es el principio FIFO, primero en entrar primero en salir, lo cual significa que
las sentencias de programacin se ejecutaran en el orden establecido: Por ejemplo:
Hacerlo juntos, se utiliza para procesos paralelos, por ejemplo cuando queremos que un
humanoide camine, al menos debe existir un mtodo que servir para mover los pies y otro para
que el humanoide avance, si ejecutsemos estos eventos uno despus del otro, no tendramos
una animacin o simulacin (dependiendo de la complejidad del movimiento) adecuada, hara
primero una cosa y despus la otra, en el caso de Alice, se puede trabajar en paralelo y ejecutar los
dos mtodos a la misma vez usando la sentencia Do together.
La sentencia if then else, en el caso de Alice, se presenta como If/Else, que se utiliza para evaluar
condiciones, ya sea que sea falsa o verdadera y asi tomar un decisin.
Cuando, necesitamos repetir varias veces un proceso, usamos la sentencia LOOP o CICLO,
recordemos que los ciclos tienen un valor inicial y un valor final, en Alice, podemos hacer un ciclo
infinito (infinity times), que obviamente puede ser detenido por un condicin. Esto significa, que
podemos controlar el ciclo como nos guste, ya que podemos usar variables para inicio, incremento
en la veces y el tope del mismo.
While, es tambin un ciclo, se funcionara mientras un condicin sea verdadera o falsa, por
ejemplo: si tenemos un auto y cada vez que le damos ignicin, queremos escuchar el sonido del
motor, podemos repetir este sonido, mientras que la variable encendido sea verdadera.
TM
Estas estructuras, se usan para el trabajo con listas o arreglos, la idea es que todos los elementos
de una lista hagan en orden algo, por ejemplo, si tenemos 5 bailarinas egipcias, y deseamos
PDF Editor
simular una danza sincronizada, debemos tener mtodos para simular el movimiento de la danza,
entonces esta instruccin nos permitir ejecutar en orden para todas las bailarinas los mtodos
deseados.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Estas estructuras, se usan para el trabajo con listas o arreglos, por ejemplo, tenemos un grupo de
personas o humanoides y deseamos que caminen al mismo tiempo, la instruccin har que todos
ejecuten en paralelo el mtodo, por caminar, esto nos permite optimizar recursos, ya que usamos
un solo mtodo para todos.
Esta sentencia, nos permite detener por un tiempo la ejecucin del programa, por ejemplo, si
deseamos mostrar un rotulo de texto, podemos usar el espera, para que el usuario tenga tiempo
de leer la informacin. Obviamente, no conviene abusar de esta sentencia, ya que puede provocar
resultados no deseados, o demoras mayores de lo adecuado.
Muy importante, para envi de mensajes, y para ver el valor de variables o banderas que usemos y
as conocer los valores de las variables en momentos precisos.
Esta, sentencia, se usa para documentar los programas, muchas veces despus de un tiempo, no
recordamos para usamos una variable en un programa, y un comentario nos ayuda para ello.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Alice en un ambiente de programacin 3D, que nos permite crear animaciones, que podemos
programar mediante su lenguaje de programacin al estilo drag and drop, arrastre y suelte. Al
principio como con cualquier otro ambiente, hay un proceso de acomodamiento, que solo con la
prctica vamos superando, hasta sentirnos cmodos con el lenguaje y poder plasmar nuestras
ideas y representarlas en este ambiente.
Place Holder, contenedores, espacios de memoria o campos, este es un concepto muy importante
de Alice, ya que es la forma en que se construyen la mayora por no decir todas las expresiones.
Desde el punto de vista de la programacin, nos enfrentamos a un ambiente grfico y es una
buena forma de cambiar el concepto del hello world, quizs enfrentarse a un ambiente ms
amigable, permita que muchas personas tengan mayores oportunidades de aprender a programar,
o al menos tener la oportunidad de probar, pero debemos recordar, que la programacin se
aprende programando y que lo lgica se desarrolla con el entrenamiento y la prctica.
La funciones, son otro aspecto muy interesante en Alice, ya que mucho del cdigo que podemos
desarrollar utiliza funciones del lenguaje y las otras definidas por el usuario, por ejemplo, en el
caso de la captura de datos, los inputs son funciones denominadas preguntas al usuario y
tenemosr (ask user for a number, ask user for yes or no, ask user for a string) bsicamente.
Finalmente, debo agraceder a la Fundacin Omar Dengo, Andrea Anfossi, a Zeidy Estrada por la
invitacin al execelente Taller de programacin en Alice 2.2, impartido magistralmente, por Don
Slater y Wanda Dann, profesor de la Universidad de Carnagie Mellon, quienes nos estimularon a
m a mis compaeros a trabajar con este ambiente de programacin y buscar nuevas formas y
oportunidades para que la gente se adentre el mundo de la programacin.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Quiero iniciar, diciendo que se trata de una captura de datos, cuando se ejecute el programa en el
ambiente Alice, aparecer una caja de dialogo, solicitando el nmero de cdula del usuario, y se
guardara el resultado en un texto 3D, como se muestra:
y aparecer la caja de
dialogo de la derecha, donde nos pregunta el
nombre (name:), en este caso le pondremos
cedula, el tipo Type, es numrico y el valor por
omisin es 1 y finalmente, hacemos clic en OK
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Texto 3D y de inmediato
aparecer la caja de dialogo de la derecha:
The quick Brown fox, este valor es el que
podemos cambiar, aqu enviaremos el dato que
capturemos desde el teclado con la funcin Ask
for number
Ahora le cambiaremos el nombre al texto 3D y le Detalle, note que el contenido de objeto texto
pondremos campo1 3D, es siempre el valor por omisin, la idea es
capturar desde el teclado un valor numrico y
traspasarlo al campo1
Clic TM
derecho y seleccionamos la opcin renombrar,
rename, y editamos el texto y le ponemos
campo1. Asi debe quedar este objeto tipo
PDF Editor
texto3D:
.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Para hacer la captura de datos del teclado o input Arrstrela dentro del rea de programacin y
desde Alice, es un poco particular, la variable que observe, que el contorno cambia a verde, lo
creamos llamada cedula, la debemos arrastrar que indica que esta en el lugar correcto.
hasta el rea de programacin en World.my first
method
Recuerde que
para arrastrar, hacemos clic izquierdo en el
mouse sin soltarlo, cuando llegamos al lugar
Observe, que el contorno de la variable es rojo, lo deseado solo soltamos el clic izquierdo del
indica que no est en la posicin correcta. mouse y quedar aqu la variable.
, esto ocurre
al soltar la variable, donde nos solicita configurar
o asignar el valor que tendr. Vaya a set value, y
vera las opciones que Alice ofrece para asignar la
variable. Debemos hacer un alto aqu y explicar el
concepto de place holder.
Cuando queremos, asignar el valor inicial,
debemos primero crear el espacio o campos
contenedor Place Holder
La traduccin litera, no es muy adecuada en
nuestro caso, pero la idea es como un campo,
deposito o contenedor. Se utiliza para poner
abrir campos para que posteriormente podamos
colocar los valores deseados. En nuestro caso
usamos set value, value, expression,
world.cedula. Porque as lo quisimos, pero pude
haber seleccionado, 0,25 y otro valor.
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Vaya a funciones, siempre recuerde que debe estar seleccionado el mundo y arrastre
la funcin ask user for a number, hasta el campo set value to
Note que se pone en verde, lo cual indica que podemos realizar esta asignacin con dicha funcin,
y es que la captura desde el teclado de realiza de esta manera en Alice.
No podemos obviar el tipo de dato, debemos utilizar la funcin correspondiente a cada tipo de
dato y recuerde que alice, bsicamente tiene:
Ahora debemos seleccionar la opcin, Otros (other) y escribir el mensaje para la lectura del dato
cedula
TM
PDF Editor
Al darle clic al botn play esto suceder:
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Escriba su el nmero de cdula que aparece en la caja de dilogo, y haga clic en el botn aceptar:
Que ocurri? Busque el valor de la variable cedula, dependiendo del tamao que tenga la
pantalla, cuando Ud. Hace clic en play, puede ser que vea la parte de propiedades del mundo y
observe la variable:
TM
Cuando termina haga clic en el botn , observe que la variable vuelve a su estado incial:
PDF Editor
Pero lo que realmente queremos, es pasar el valor de la variable al texto 3D,
que nombramos como campo1 y parea ello hacemos lo siguiente:
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
1.Vaya al objeto
campo1, que es
2.Haga clic en un texto 3D
la vieta de
propiedades
1.Seleccione World
2.Haga clic la
vieta funciones
PDF Editor
Ahora debemos, seleccionar la opcin What, expression y finalmente world.cedula
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Escriba en campo1, que es un texto 3D, el valor de la variable cedula y convirtalo en una palabra,
cadena o string.
Ya tenemos la funcin lista, ahora podemos hacer un clic en el botn play, para probar lo que
hemos hecho hasta aqu. Si escribes el mismo nmero,
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
1.Seleccione world
2.Vaya la
vieta
funciones
TM
3.Arrastre la
PDF Editor
funcin Int a as a
String, hasta
world.cedula
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Ahora ya terminamos, nuestro trabajo por esta leccin, podemos hacer un clic en el botn play,
veremos que el la funcin int, nos deja el entero del valor, como se muestra en la siguiente figura.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Vamos a crear las variables para almacenar los pases y sus capitales 2 dos variables, como se
muestra a continuacin:
Escriba el
nombre de
Tipo Otros, y la variable
ser String
Seleccione
crear lista
Haz clic TM
PDF Editor Ahora debemos crear la lista de nuestros pases y debera quedar as:
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Utilizando la misma metodologa, Ud. Deber crear la lista capitales y el resultado final deber ser
como el que se muestra en la lista capitales.
La variable azar tomara un valor entre 1, hasta 7, ya que tem no puede recuperar el elemento
1.33, la funcin toma la parte entera, por ejemplo, 0,33 = 0, 9,99 0 0, 1.77 = 1 y asi
suscesivamente. Por ejemplo si azar vale 5, entonces el elemento 5 de pases es Costa Rica y el
elemento 5 de capitales es Costa Rica.
TM
PDF Editor
Aqu le asignamos al texto 3D textopaises un valor entre 0 y 7 de la lista pases
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
La siguiente lnea de cdigo, es idntica a la anterior, solo que usamos la variable capitales,
obviamente si la variable azar vale 1, la capital ser Belmopn y as sucesivamente.
PDF Editor
Estamos pensando en lo mismo?, podemos a partir de aqu crear un trivia sobre las capitales de
Centroamrica, podemos preguntarle a los usuarios, cuales la capital del azar de las lista pases y la
respuesta correcta ser el zar de la lista capitales. Veamos como lo hacemos.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Vamos a crear 2 nuevas variables, para almacenar lo ya conocemos, nombres de los pases y
nombre de las capitales, pregunta guarda el nombre del pases y respuesta almacenar la
respuesta que el usuario escribir a la pregunta, cual es la capital de:
Asignremos a estas variables una funcin para captura de datos desde el teclado de tipo string o
cadena, como se puesta a continuacin.
TM
Recordemos, que cuando hacemos una pregunta ask, lo hacemos por medio de una funcin y para
PDF Editor
invocarla, debemos asignar a una variable la pregunta, el resultado de la pregunta, quedara en la
variable a la que le asignamos la pregunta. Por lo tanto, el valor final de world.Pregunta, ser lo
que el usuario haya escrito como respuesta.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Esta evaluacin plantea, si world.Pregunta es igual al nmero aleatorio que contiene azar de la
lista capitales, lo tenemos, es correcto.
Por ejemplo, el azar vale 5, por eso la pregunta es sobre Costa Rica, obviamente la respuesta
correctas es el elemento no. 5 de la lista capitales, que es San Jos.
Cuando hacemos debera aparecer lo siguiente (asumiendo que azar es una valor
de = 5.. hsta 5.99), esto muestra lo siguiente:
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Significa que la respuesta es incorrecta, y se viene por el lado del Else (sino), no toca nunca la
instruccin despus del If.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Ingrese en Alice:
TM
PDF Editor
Esta es la galera que tiene el helicptero que necesitamos.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Le aparecern la flechas direccionales para mover, y observe que dice camera, debemos cambiar
la camera por el helicopter.
TM
Ahora, ya podemos probar el helicptero y desplazarlo por el mundo, vaya a la opcin
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Para terminar, solo haz un clic en , divierte un rato y trata de hacer que el helicptero de
vueltas, sin perderlo de vista.
Ahora debemos crear otros mtodos, para que el helicptero parezca ms controlable.
TM
PDF Editor
El mundo del helicptero, se muestra en la figura anterior, es muy importante, que cuando
usemos un mtodo que ya existe o cuando construyamos uno, debe estar asociado siempre a un
objeto del mundo.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Tabla de Eventos y mtodos, los mtodos locales, ya vienen con el objeto, y los mtodos DPU
(Definidos por el usuario), son los que tenemos que hacer nosotros.
Construyamos el mtodo heli on, vaya a crear nuevo evento: y seleccione When a key is typed
(cuando una tecla es digitada o tocada).
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
recuerde que cuando tenemos varios eventos, algunas veces no los vemos y debemos utilizar el
ascensor hacia abajo para ubicarlos.
TM
Ud. puede ver este mtodo, si lo desea,
seleccionndolo y haciendo clic, en la opcin Edit.
PDF Editor
Programacin de tecla E Explicacin del mtodo y evento
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Ahora vamos a crear el mtodo definido por el usuario, heli Sube, para que el helicptero puede
Aqu se muestra el rea de programacin, debemos arrastrar hasta donde dice Do Nothing, las
diferentes comandos de programacin, de acuerdo con las acciones que deseamos haga nuestro
mtodo.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Note que la opcin se pone con el contorno en color verde, eso significa que si lo puedes poner en
el rea de programacin, si esta en rojo, indica que esa no es el rea de programacin,
PDF Editor
Ahora vamos a crear el evento asociado a la tecla S, para que cada vez que se toque la tecla S, el
helicptero suba.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Vaya a crear nuevo evento y seleccione When a key is typed, cuando una tecla es tocada
Haz un cli en la opcin any key, seleccionemos letters y escojamos la letra S, para asociar el
mtodo heli Sube . Cada vez que presiones la tecla S, el helicptero subir 1 metro hacia arriba.
TM
PDF Editor
Asignacin del evento a la tecla S. Opcin do Nothing
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Creacin del mtodo, para controlar el helicptero, haciendo que este baje cuando tocamos la
tecla B. Bueno es exactamente el mismo procedimiento para el mtodo heli Sube, solo que la
instruccin ser:
PDF Editor
Haz clic en y ve a volar el helicptero.
Cul ser el evento que active el sonido del helicptero?, Bueno como nunca he manejado un
helicptero, imagino que cuando se le da ignicin o se enciende, el motor inicia su sonido, esto
significa que de los eventos que tenemos, el evento ms adecuado es E, que en realidad llama al
mtodo heli blade (este mtodo hace que las hlices se muevan), por lo tanto vamos a analizar
este procedimiento, para poder determinar cul es el mejor lugar para llamar al sonido. Recuerde,
que cuando la nave enciende, el sonido deber sonar hasta que se apague.
Veamos cmo est hecho el mtodo heli blade, dirjase a y haz un clic en edit,
y aparecer los detalles del mtodo, normalmente aparecen cerrado y haz un clic en el , para
abrirlo.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Vamos a introducir la instruccin de play sound, debajo del primer ciclo Loop, arratre el icono que
representa la instruccin:
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
Ya se agrego al mtodo, la instruccin para que cada vez que se encienda el helicptero, suene el
PDF Editor
motor, ahora vaya a probarlo, verifique que tenga los parlantes conectados al computador y que el
volumen no est pausado, buen viaje
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
La sentencia if then else, en el caso de Alice, se presenta como If/Else, que se utiliza para evaluar
condiciones, ya sea que sea verdadera o falsa y as tomar un decisin. Por ejemplo, queremos
hacer una adivinanza, con colores, entonces vamos a seleccionar un color y le vamos a preguntar a
algn amigo (a), para ver, si adivina el color. Por tanto, necesitamos 2 variables, miColor y
amigoColor, para poder comparar una variable con la otra.
2.Tipo es
Other,
String
3. Y el valor TM
ser
morado
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
1. Clic en World
2.Clic en Properties
TM
Ahora vamos a necesitar una funcin, para solicitarle a usuario que nos conteste una pregunta, en
PDF Editor
este caso le interrogaremos con: Adivina en que color estoy pensando?, para ello usamos la
funciones ASK USER, preguntarle al usuario y seleccionamos. Pero primero debemos arrastrar la
variable amigoColor al rea de programacin
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Al saltarla, nos pedir que le asignemos el valor y este caso, usamos el place holder (modo
contenedor) y le asignamos default string (cadena o palabra por omisin), como se muestra en la
siguiente figura:
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Al soltar la funcin, nos da varias opciones, en este caso vamos a seleccionar Enter a String:
Bien, lo que sigue es, hacer un clic en Enter a String y nos dejara entrar no modo edicin, para
escribir nuestra pregunta: Adivina en que color estoy pensando?
Excelente, ya tenemos la captura de datos, si quieres puedes hacer un clic en play, para que veas
la pregunta, deber aparecer algo como lo que sigue:
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Claro est, que an, no evaluamos nada an, nos hace falta usar la instruccin , recuerda
que esta funcin, nos permitir comparar el valor de la variable amigoColor, con nuestra variable
miColor, que le asignamos el valor morado.
Entonces vamos a hacer la evaluacin, para ello debemos arrastrar la sentencia , al rea
de programacin, como se muestra en la siguiente figura:
TM
PDF Editor
OK, Ahora debemos arrastrar la variable amigoColor hasta el rea de true del If/Else
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Si amigoColor es igual a
miColor,
entonces,
sino
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Prueba, cambiando este programa, y pregunta por un nmero, en vez de un color, para que te
familiarices con la sentencia If/Else.
Hacerlo juntos, se utiliza para procesos paralelos, por ejemplo cuando queremos que un
humanoide mueva los brazos a la misma vez, al menos debe existir un mtodo que servir para
mover los brazos derecho e izquierdo, si ejecutsemos este mtodo, se mover, primeroTM un brazo
y despus el otro, por lo tanto, se trata de un proceso en paralelo, y lo hacemos con la sentencia
Do together, veamos el siguiente ejemplo:
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Figura 1
Bien ahora queremos, crear un mtodo en Alicia para mover las manos, para ello hacemos un clic
en Alicia y nos vamos a la propiedad Mtodos y creamos un nuevo mtodo y lo llamamos,
moverBrazos, como se muestra en la figura 5.
Figura 6
Figura 5 TM
PDF Editor
opcin create a new method. derecho de Alice, como se muestra en la
figura 6.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Figura 7
Ahora debemos arrastrar la instruccin rightArm roll, hasta el do together, como se muestra en la
figura 8, y soltarlo.
Figura 8
Figura 9
TM
PDF Editor
Ahora, asignmoslo al evento principal, llamado: when the world start
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
CONCEPTO DE FUNCION
Pedro J. Fonseca Solano
Una funcin es una expresin compuesta por varias expresiones, que nos permite resolver el
problema de realizar un clculo o cmputo de un fenmeno medible. Desde el punto de vista
computacional, las funciones en algunos casos vienen ya preestablecidas dentro de los lenguajes
computacionales, como extensiones del mismo, para hacer ms fcil la labor de programacin de
soluciones a problemas, por ejemplo: en la mayora de lenguajes existe la funcin Square root, sqr
o raz cuadrada, sin embargo los lenguajes serian sumamente extensos, si incluyeran todas las
funciones. Por ello existen las funciones definidas por el usuario, para que los usuarios puedan
crear sus propias funciones, para resolver problemas.
En el caso de Alice 2.2, existen propiedades, mtodos y funciones, para el mundo y para cada
elemento de insertemos en el mundo.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
En Alice, iniciamos creando las variables y declarndolas con el valor de cero. Eto lo hacemos en
World.
n el caso de la variable Resultado, la utilizaremos para acumular la suma de los valores ledos (12,+
3, 6, 14.5 y 10).
TM
PDF Editor
tipo numrico, como se muestra en el
cuadro de derecha. Haz un clic en OK, y
estaremos listos para iniciar con la creacin
de nuestra funcin.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Este es el rea para escribir nuestra funcin, note que toda funcin siempre al final tiene un valor
de retorno, aqu podemos retornar el valor o resultado de nuestra funcin, no importa lo compleja
que sea nuestra funcin, al final nos dar un nico valor, aunque podamos usar otros valores si
fuese necesario, en el caso de la sumatoria, lo que nos interesa de momento es el resultado final.
2
3
TM
PDF Editor
solicitar al usuario que digite la cantidad de nmeros que queremos sumar, es el usuario el que
dar este valor, se utiliza la funcin ask user for a number, que al final dejar en la variable el valor
que el usario digite, como se muestra en la siguiente figura:
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Aqu, se nos pregunta sobre cuantos valores deseamos sumar, pues el programa suma N valores,
lo que ocurre es que si deseamos sumar 1000 o ms, tardaremos mucho digitando los mil nmeros
o ms, por lo que probaremos el programa con 5 valores.
Observe, que los valores de las variables, se muestran con la idea de seguir el programaTM
y ver los
cambios conforme se va ejecutando dicho programa.
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Observe, que la variable resultado ahora tiene el primer valor que fue el nmero 12 y ahora
debemos escribir el segundo valor, el nmero 3 y hacer clic en aceptar.
TM
Note, ahora como los valores cambian, pues la variable valor, tendr siempre el ltimo valor
digitado de los N valores, que decidimos sumar, adems el resultado va acumulando la suma de lo
PDF Editor
que tiene la variable resultado ms lo que tienen la variable valor, es decir 12 + 3 = 15.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Ahora escribimos el tercer valor, y digitamos el nmero 6, despus de hacer clic en aceptar,
tendremos las variaciones del caso, es decir, resultado ser igual a _____ y valor ser igual a ____.
TM
Puedes, verificar los valores de las variables, que pusiste en los espacios anteriores, donde te
solicitamos los valores y verificar que todo va bien.
PDF Editor
Excelente, el cuarto valor ser 14.5
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Y finalmente, el ltimo valor ser el nmero 10, pues hemos sumado 5 nmeros y el resultado
final es:
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Clic
Le damos el nombre azar a la variable, aue sea de tipo numrico y con valor inicial de 1, como se
muestra en la siguiente figura.
Nombre
Clic en
OK para
crearla
Tipo
Valor
Si observamos los detalles el mundo, notamos que ya la variable azar esta creada como se muestra
en la siguiente figura.
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Para ver dicha variable los podemos hacer de varias formas, la primera, que personalmente me
TM
PDF Editor
al soltarlo aparecer: donde
debemos seleccionar objetos y buscamos nuestra variable, como se muestra en la siguiente figura:
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Cunto vale la variable azar?, 1 o 1.0, parece algo sin importancia, pero en los lenguajes y
ambientes de programacin, esas representaciones hacen referencia a dos tipo de valores,
enteros y fracciones, donde 1 es un entero (integer) y 1.0 es una fraccin (real), en el caso de Alice
los nmeros enteros los trata como reales, por esa razn, existe la funcin int ,
que tomo el valor numrico y lo convierte en entero (int) y finalmente lo convierte o pasa como un
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Haga un Clic
Haga un Clic
Excelente !!!, ahora ya tenemos la variable azar con la funcin int, como se muestra en la siguiente
figura:
, de lo anterior,
deducimos que la instruccin , para los nmeros, los toma como reales y en el caso del
clic derecho a la variable con la opcin , muestra al darle play el valor como
entero, sin embargo cuando afectamos la variable con cualquier valor, tambin lo muestra como
un real, parece que solo lo hace cuando la variable se declara en 1, al inicio y esta no toma ningn
otro valor.
TM
PDF Editor
Reto, que hace entonces la funcin , prubalo.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Para continuar y utilizar la instruccin RANDOM, borremos el rea de programacin, haz un clic
derecho en la parte anaranjada de la instruccin print y seleccione borrar (delete). Y el rea de
programacin world.my first method, nos queda limpia.
Ahora vamos a arrastrar hasta el rea de programacin, la variable azar, para asignarle su valor,
arrastre la variable, como se muestra en la siguiente figura:
1. Arrastre
AZAR
2. Seleccione VALUE
(Valor)
TM
PDF Editor
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
Pero ahora debemos, establecer el rango de los valores aleatorios que queremos, en este caso
vamos a fija el mnimo como 1 y el mximo como 5:
3. Seleccione
mximum e
introduzca el valor
de 5
TM
PDF Editor
4. Finalmente,
seleccione solo enteros
y los fija como true, o
sea verdadero
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
La variable azar, se le asigna como valor el rango de 1 a 5, de nmero enteros, por lo tanto la
salida ser siempre un nmero entre 1 y 4, porque al mximo valor del rango, se le resta 1.
Si deseamos generar los nmeros al azar del 1 al 5, debemos establecer el rango del mnimo 1 y
mximo 6., por ejemplo:
Si hacemos clic en el botn , anote, cual es el valor de azar, y luego haga clic 4
veces en el botn , anote el valor de azar en , cada vez que hace clic en restart,
compare los valores con sus compaeros.
Veces: 1 2 3 4 5
Amigas y Amigos, espero que este manual les sea de utilidad, y puedan tenerlo como referencia
TM
para su trabajo docente, les agradezco cualquier, comentario o sugerencias y me pueden escribir a
la siguiente direccin : pfonsecalice@gmail.com, y pueden visitar la pgina
pfonsecalice.jimdo.com, donde seguir compartiendo el trabajo con ustedes. This is a free gift to
PDF Editor
you from Pedro J. Fonseca Solano. Febrero 2011.
PROGRAME EN ALICE 2.2 Pedro J. Fonseca Solano
TM
PDF Editor