Modificar tu molinete

En esta página, modificarás el código existente de molinete con el objetivo de usarlo para dibujar una gran variedad de formas.
variedad de molinetes

Agregar múltiples entradas

Recuerda la forma en la que generalizaste el programa original de molinete: agregaste un campo de entrada llamado número de ramas, el cual controlaba el ángulo de rotación del cursor. Si agregamos más campos de entrada, es posible generalizar otros aspectos del programa.

  1. Si aún no has abierto el proyecto U1L3-Molinete, ahora es el momento.
  2. AAP-3.A part b
    Experimenta con un campo de entrada para el segundo bloque mover que se encuentra en el código de molinete. A continuación se muestra una toma de pantalla del lugar específico.
    1. Habla con tu pareja En primer lugar, hagamos una predicción. ¿Qué crees que pasará al hacer cambios en dicho valor? bloque de molinete con un comentario que pide a los estudiantes que experimenten con esta entrada para el segundo bloque mover
    2. Luego prueba con varios valores entre -100 y 0.
    3. Habla con tu compañero ¿Qué ha pasado? ¿Cómo se compara el resultado con tu predicción? ¿Cuál es el impacto en el cambio del valor en el comportamiento del cursor? ¿Cuál es el impacto en la imagen que se presenta en el escenario?
      Animación del ciclo de un asterisco a un polígono
  3. En el caso de ser necesario, revisa el procedimiento para agregar un campo de entrada en Unidad 1 Laboratorio 3 Página 3: Bloques con entradas.
    Agrega un segundo campo de entrada para controlar la cantidad de "espera" que el cursor realiza antes de cada giro para llegar a la vuelta completa a 360°.
    1. Edita el bloque molinete, haz clic en el signo "+" que se encuentra al final y agrega un parámetro (elige la etiqueta "Texto"). Escribe respaldo: como se muestra más abajo y haz clic en "Aceptar".
    2. Luego haz clic en el signo "+" hacia el final y agrega un parámetro (elige "Parámetro"), y ponle nombre respaldo.
    3. Arrastra el nuevo parámetro respaldo, luego colócalo en el lugar que le corresponde en el código de molinete. Luego presiona en "Aceptar" o "Aplicar."
    4. Revisa que el cambio efectuado con el campo de entrada respaldo funcione correctamente al ejecutar el bloque molinete. Revisa que se obtenga el resultado esperado. Depura cualquier problema de ser necesario.
  4. Usa un bloque de la categoría: "Operadores".
    Cambia el código de molinete para que el campo de entrada respaldo acepte únicamente valores positivos (entre 0 y 100).
AAP-3.C.1, AAP-2.K.2
La definición del comando personalizado molinete que se muestra a continuación
molinete, ramas: (número de ramas)
{
    repetir(número de ramas)
    {
        mover (100) pasos
        mover (-37) pasos
        girar (360 / número de ramas) grados
    }
}
se escribe en inglés con la siguiente notación
PROCEDURE molinete(numeroDeRamas)
{
    REPEAT numeroDeRamas TIMES
    {
        mover(100)
        mover(-37)
        girar_sentidodelreloj(360 / numeroDeRamas)
    }
}
or PROCEDURE molinete(numeroDeRamas)
{
    REPEAT numeroDeRamas TIMES
    {
        mover(100)
        mover(-37)
        girar_sentidodelreloj(360 / numeroDeRamas)
    }
}
Los procedimientos
mover()
y
girar_sentidodelreloj()
no forman parte del lenguaje AP, por lo que están escrito en minúsculas, de la misma forma que otros procedimientos definidos por el programador.
Ten en cuenta que el bloque sombrero, molinete, ramas: (número de ramas), se escribiría como
PROCEDURE molinete(numeroDeRamas)
. La palabra
procedure
(procedimiento) te indica que la línea de código es como un bloque sombrero; el nombre de la variable entre paréntesis en esa línea es la entrada que toma el procedimiento.
  1. Agrega otro parámetro con el título tamaño, su función será la de controlar el valor del primer bloque mover.
    molinete, ramas: (número de ramas) tamaño: (tamaño respaldo: (respaldo))
  2. Prueba con una variedad de valores en el programa molinete.
    setup; molinete, ramas: (6) tamaño: (80) respaldo: (20) imagen resultado de molinete, ramas: (6) tamaño: (80) respaldo: (20)
    molinete, branches: (5) size: (80) respaldo: (60) imagen resultado de  molinete, ramas: (5) tamaño (80) respaldo: (60)
  3. Habla con tu compañero Convenser sobre qué valores dibujarán un polígono o un asterisco.
    Guarda tu trabajo. polígono asterisco

Consejos para depuración: Organiza tu código

Una buena práctica para evitar errores en el programa es, prioritariamente, mantener el código organizado al borrar todos los bloques que no se utilizan. Normalmente arrastramos bloques para hacer pruebas, pero se pueden quedar en el espacio de trabajo sin uso. Se puede usar la opción ordenar haciendo clic-derecho (o control-clic en Mac) en el área de trabajo para organizar los bloques. Se puede eliminar o eliminar un bloque o código arrastrándolo hacia afuera del área de trabajo hacia la paleta de funciones al lado izquierdo, o bien seleccionando la opción "eliminar" en el menú emergente al hacer clic-derecho. Clic para abrir el video del proceso. (Toma nota que es una funcionalidad diferente a la opción "eliminar definición de bloque...", la cual borra permanentemente un bloque personalizado y todas sus instancias en todo el proyecto.)

Animación sobre cómo eliminar bloques arrastrándolos fuera de la paleta o escogiendo la opción de eliminar haciendo clic-derecho.

  1. Organiza el código de tu proyecto, si es necesario.
AAP-3.A.5
La siguiente instrucción molinete, ramas: (6) tamaño: (80) respaldo: (20) tendría la siguiente notación
molinete(6, 80, 20)
o un rectángulo blanco que contiene la palabra 'molinete' en mayúsculas seguida de un rectángulo más pequeño que contiene las entradas'6, 80, 20'.

Posiblemente has escuchado que algunas personas utilizan el término "pseudocódigo" para referirse a este pseudo-lenguaje usado en el examen de principios AP CS, pero esto no es pseudocódigo. El pseudocódigo no es un lenguaje de programación, se usa cómo un lenguaje humano natural para describir un algoritmo.

  1. Encuentra los valores de entrada para molinete que hagan una figura en forma de círculo.
Kandinsky-style overlapping circles Kandinsky-style overlapping circles Kandinsky-style overlapping circles Kandinsky-style overlapping circles
pintura de Kandinsky
  1. Al lado derecho se muestra una pintura de Vassily Kandinsky. Las cuatro pinturas que se presentan en la parte superior están inspiradas por el trabajo de Kandinsky, pero el tamaño y la posición de los círculos en la pintura original fueron cuidadosamente seleccionados, mientras las otras fueron incluidas aleatoriamente. También es posible notar que los círculos sólidos de Kandinsky no tienen un color uniforme. Por ejemplo, el círculo verde cerca de la parte superior derecha tiene destellos de verde claro en la orilla, un verde parcialmente oscuro dentro, un verde azulado en el borde del círculo interior y un fondo negro en el centro.
    Cuando dos colores sólidos se solapan, es posible apreciar los dos colores, o mejor dicho, un color nuevo entre dos. Para lograr este efecto en Snap!, antes de dibujar el segundo círculo debes usar el bloque fijar (transparencia) del lápiz a (). Una transparencia con valor 0 significa que únicamente se puede ver el nuevo color; una transparencia con valor 100 resulta en la totalidad del color de fondo. Los valores intermedios determinan que color tiene más predominancia en la zona común.
    La mayoría de los círculos en el trabajo de Kandinsky son sólidos, pero unos pocos no lo son. Es más evidente en el círculo grande blanco cerca del centro de la pintura. Este tipo de círculos no tienen un ancho constante; si deseas que tu círculo tenga un aspecto similar cambia el tamaño del lápiz poco a poco mientras dibujas. Por supuesto, no tienes que hacer que tu trabajo se vea igual que los ejemplos proporcionados. Úsalos de inspiración, pero sé creativo, ¡eres el artista!.
  2. Dibuja una pintura que se parezca más a un molinete real como se aprecia a continuación:
    Fotografía de un molinete con cuatro puntas. El molinete es rojo con un tallo verde y una tachuela plateada en el centro que une el molinete al tallo.
    Copyright 2010 Victoria Hudgins. Usado con permiso.

    (Guarda tu proyecto; vas a necesitar el bloque molinete más adelante.)

    No debe verse igual al de la foto. Pero cada rama del molinete tiene esencialmente dos triángulos. Puedes encontrar útil para este ejercicio el bloque bloque llenar.