Funciones como Máquinas a Explorar

Contenido

1. Mirna Freytes

Simulador de máquinas tragamonedas

1.1. Vera M. Rexach

From: vera at rex.wamani.apc.org
Date: Fri, 24 Jul 1998 22:15:08 

Hola Logonautas, hola Mirna

En este momento, no puedo transcribir los procedimientos que crearon los chicos porque estoy en casa y no tengo copia de los trabajos realizados, pero si a alguien le interesa, cuando retomemos las clases puedo hacerlo.

Creo que ni falta hace pedir confirmacion, Mirna, envianos los procedimientos y tus comentarios, que pienso que seran lo mas interesante. Como llegaron los chicos a pensar las condiciones que debian respetar los programas para funcionar? Les agregaron "estetica" a las maquinas ? Descubrieron algunas propiedades de la probabilidad? Pudieron generalizar? Esas cosas son realmente valiosas.

Les cuento una idea:

en uno de los disquettes de programas que publicaba (años ha) la Asociacion Amigos de Logo de Argentina, habia una pagina llamada maquinas.lwr que tenia varios dispositivos "virtuales" que pedian una o mas entradas y producian una salida.

Por ejemplo: la maquina 1 necesitaba como entrada un numero menor que 10, la maquina 2 una palabra, la maquina 3 dos numeros , etc.

El chico las usaba y trataba de explicar qué hacia cada maquina con la entrada que recibia, segun la salida obtenida. Lo hacia probando, cambiando metodicamente la entrada o al tun-tun, comparando con lo que obtenia su compañero, tratando de que la maquina fallara...

Por ejemplo:

el usuario pone:

la maquina contesta:

maquina1 5

Resultado: 11

maquina1 0

Resultado: 1

maquina1 8

Resultado: 17


Al principio, decian algo asi como "le suma 6!" pero si uno les dice "A ver proba dandole otra entrada, por ejemplo 0" Tratan de rectificar : "Ah, no le suma 1..." Y uno cargoso: "Probá con 1" Una vez que pescaban que el punto no era "decir la cuenta" o encontrar el resultado, sino explorar el comportamiento, empezaban a disfrutar.

Con un grupo de tres chicos de un 7mo grado, hicimos más máquinas para agregarle a la pagina : maquinas que tomaban la entrada y devolvian la raiz cuadrada, o que la usaban como angulo de giro, o que pintaban si el numero era mayor de tal y menor que tal otro, que repetian un sonido las veces que dijera la entrada...

Y la idea de ahora es esta: hacemos una pagina de maquinas-logo entre todos?

Yo puedo aportar esto: las entradas y las salidas de una maquina, y que el que quiera escriba los procedimientos para obtener ese resultado. Podemos hacerlas en varias versiones de Logo (Writer,MM, LG,etc) ya que la idea es "compatible con cualquier version", no?

Ahi va:

Maquina

Entrada

Salida

1

una palabra, por ej:CONEJO

"Coponepejopo"

2

una letra, por ej: L

M (si entra A,sale B, si entra C sale D, y asi...)

3

un numero,por ej: 100

001 (y si entra 234, sale 432, entra 45 sale 54...)


Un desafio para nuestros maestros programadores ! adelante! ;)

Vera
Prof. Vera M. Rexach
Monte Grande Buenos Aires ARGENTINA

2. maquinas.lwr

para inicio
bt bg et
es [Deberás descubrir qué hacen las seis maquinitas LOGO de esta página]
es []
es [MAQUI1 Debes ingresar un número. Por ejemplo: MAQUI1 13]
es []
es [MAQUI2 Debes ingresar dos números. por ejemplo: MAQUI2 145 345]
es []
es [MAQUI3 Debes ingresar un número menor que 30. Por ejemplo: MAQUI 14]
es []
es [MAQUI4 Debes ingresar  un número o una palabra. Por ejemplo MAQUI4 "PATETICO]
es []
es [MAQUI5 Debes ingresar una palabra. Por ejemplo MAQUI5 "ALEGRE]
es [MAQUI6 Debes ingresar una palabra.] 
fin

para maqui1 :a
si no numero? :a [es [no puedo digerir otra cosa que no sea un número] alto]
bt
working
es (:a / 2 ) + 1
fin

para working
es [trabajando]
repite 20 + azar 10 [tono 100 + azar 100 1 ]
fin

para maqui2 :a :b 
si o no numero? :a no numero? :b [
 es [no puedo digerir otra cosa que no sea un número] 
 alto
]
bt
working
es (:a + :b ) / 2 
fin

para maqui3 :a
si no numero? :a [
 es [no puedo digerir otra cosa que no sea un número]
 alto
]
si :a > 30 [bt es [no puedo digerir números mayores que 30]]
si miembro? ". :a [bt es [no pueedo digerir números decimales] alto] 
sp
bg
fpos [-100 -60]
cp
repite 2 [ad 120 de 90 ad 200 de 90]
repite :a [de 90 ad 200 / :a iz 90 ad 120 at 120]
sp 
fpos [-100 -60]
de 45 ad 3 cp fcolor 2 pinta sp at 10 iz 45 
fcolor 1
fin

para maqui4 :a
bg bt cp
da "num cuenta :a
working
si :num = 1 [alto]
repite :num [ad 30 de 360 / :num]
fin

para maqui5 :a
bg bt
working
siotro (ultimo :a) =  "s [es mul :a] [es palabra :a "s] 
fin

para maqui6 :a
bt bg 
si número? :a [es [no puedo digerir números] alto]
working
siotro vocal? primero :a [ve] [ce]
fin

para vocal? :letra
reporta miembro? :letra [a e i o u]
fin
 
para ce
bg
iz 90
at 20
ad 40
de 90
ad 80
de 90
ad 40
fin

para ve
bg
de 30  
ad 100
at 100
iz 60
ad 100
at 100
de 30
fin

3. Preguntas, Dudas, Comentarios, Peticiones

Síguenos en Facebook

4. Enlaces

Lenguaje de Programación Logo

Manual de LogoWriter


Generado con PureJoy. Creación: 11:49 - Dec 15, 2017. Última Modificación: 17:11 - Apr 02, 2023