Diferencia entre revisiones de «Plantilla:Scratch/InstruccionesRepetitivas»
De WikiEducator
(Página creada con «<br /> {{MRM_Pregunta|Title=Instrucción de repetición o bucle| *En este caso vamos a repetir una serie de veces un conjuto de acciones *Puede ser que quereamos repetir...») |
|||
(2 revisiones intermedias por el mismo usuario no mostrado) | |||
Línea 1: | Línea 1: | ||
− | < | + | <div id=parrafo> |
− | + | <br> | |
− | + | ||
{{MRM_Pregunta|Title=Instrucción de repetición o bucle| | {{MRM_Pregunta|Title=Instrucción de repetición o bucle| | ||
− | *En este caso vamos a repetir una serie de veces un | + | * En este caso vamos a repetir una serie de veces un conjunto de acciones. |
− | *Puede ser que | + | * Puede ser que queramos repetir algo de forma infinita (mientras dure la ejecución del programa). |
{{Tip|Este tipo de bucles son bucles infinitos}} | {{Tip|Este tipo de bucles son bucles infinitos}} | ||
[[Archivo:bucleInfinito.png]] | [[Archivo:bucleInfinito.png]] | ||
− | *Puede ser que | + | |
+ | * Puede ser que sepamos cuántas veces queremos repetir un bucle. | ||
{{Tip|Este tipo de bucles son contadores}} | {{Tip|Este tipo de bucles son contadores}} | ||
[[Archivo:bucleContador.png]] | [[Archivo:bucleContador.png]] | ||
− | *Puede ser que | + | |
− | {{Tip|Este tipo de bucles son bucles con condición | + | * Puede ser que establezcamos una '''''condición booleana''''' para determinar hasta cuándo queremos repetir el bucle. |
+ | {{Tip|Este tipo de bucles son bucles con condición booleana}} | ||
[[Archivo:bucleCondicion.png]] | [[Archivo:bucleCondicion.png]] | ||
− | |||
}} | }} | ||
{{MRM_Actividad|Title=Iteraciones| | {{MRM_Actividad|Title=Iteraciones| | ||
− | *Cuando apretamos la tecla '''''C''''' de crecer queremos que el | + | * Cuando apretamos la tecla '''''C''''' de "crecer", queremos que el sprite se haga más grande en 10 pasos, esperando un segundo entre cada incremento de tamaño. |
− | Igualmente si | + | * Igualmente, si apretamos la tecla '''''P''''' de "pequeño", queremos que el sprite se haga más pequeño en 10 pasos, esperando un segundo entre cada decremento de tamaño. |
{{Plegable|hide | {{Plegable|hide | ||
|Posible solución | |Posible solución | ||
Línea 27: | Línea 27: | ||
{{MRM_Actividad|Title=Iteraciones| | {{MRM_Actividad|Title=Iteraciones| | ||
− | *Cuando apretamos la '''''C''''' de crecer queremos que el | + | * Cuando apretamos la tecla '''''C''''' de "crecer", queremos que el sprite crezca hasta que toque el borde y luego vuelva a su tamaño normal. |
{{Plegable|hide | {{Plegable|hide | ||
|Posible solución | |Posible solución | ||
| | | | ||
− | |||
[[Archivo:scratchBucle2.png]] | [[Archivo:scratchBucle2.png]] | ||
}} | }} | ||
}} | }} | ||
+ | |||
===Variables=== | ===Variables=== | ||
− | |||
{{MRM_Pregunta|Title=Instrucción de declarar variables| | {{MRM_Pregunta|Title=Instrucción de declarar variables| | ||
− | + | Una variable es una posición de memoria en la cual vamos a almacenar un valor de algún tipo y cuyo contenido puede ser modificado durante la ejecución del programa. | |
− | + | * Es una parte muy importante en la programación. | |
− | + | ||
− | *Es una parte muy importante en la programación. | + | |
[[Archivo:declararVariable.png]] | [[Archivo:declararVariable.png]] | ||
}} | }} | ||
− | *Una vez creada la variable, la utilizaremos de dos maneras: | + | |
+ | * Una vez creada la variable, la utilizaremos de dos maneras: | ||
;Para asignarle un valor | ;Para asignarle un valor | ||
[[Archivo:asignacionVariable.png]] | [[Archivo:asignacionVariable.png]] | ||
− | ;Para operar con ellas. | + | ;Para operar con ellas. |
− | Aquí aparece un nuevo término de programación que son ''' | + | Aquí aparece un nuevo término de programación que son '''expresiones'''. |
+ | |||
{{MRM_Definicion|Title=expresión| | {{MRM_Definicion|Title=expresión| | ||
− | Una expresión es un conjunto de valores y operadores | + | Una expresión es un conjunto de valores y operadores que, al evaluarse, da como resultado un valor. |
− | que | + | }} |
+ | |||
{{MRM_Ejemplo|Title=expresión aritmética| | {{MRM_Ejemplo|Title=expresión aritmética| | ||
− | ;Son | + | ;Son operadores conocidos de matemáticas, y dan como resultado un número. |
<source lang=php> | <source lang=php> | ||
8+5; | 8+5; | ||
9*7; | 9*7; | ||
9/7; | 9/7; | ||
− | 7- | + | 7-6; |
9%4; | 9%4; | ||
</source> | </source> | ||
[[Archivo:operacionesAritmeticas.png]] | [[Archivo:operacionesAritmeticas.png]] | ||
}} | }} | ||
− | {{MRM_Ejemplo|Title= | + | |
− | ;Son | + | {{MRM_Ejemplo|Title=expresiones booleanas| |
+ | ;Son operadores lógicos y dan como resultado un valor booleano, True o False. | ||
<source lang=php> | <source lang=php> | ||
8>5; | 8>5; | ||
9<7; | 9<7; | ||
No Verdad; | No Verdad; | ||
− | Expresión_1 AND | + | Expresión_1 AND Expresión_2; |
</source> | </source> | ||
[[Archivo:operacionesLogicas.png]] | [[Archivo:operacionesLogicas.png]] | ||
}} | }} | ||
− | {{MRM_Ejemplo|Title= | + | |
− | ;Son | + | {{MRM_Ejemplo|Title=expresiones sobre cadenas| |
+ | ;Son operadores sobre cadenas de caracteres. | ||
<source lang=php> | <source lang=php> | ||
− | "Cadena una " unir "Cadena 2" | + | "Cadena una " unir "Cadena 2"; |
− | + | contarCaracteres("cadena"); | |
</source> | </source> | ||
[[Archivo:operacionesCaracteres.png]] | [[Archivo:operacionesCaracteres.png]] | ||
− | |||
}} | }} | ||
{{MRM_Puntos clave|Title=Muy importante| | {{MRM_Puntos clave|Title=Muy importante| | ||
− | + | UNA EXPRESIÓN NO ES UNA INSTRUCCIÓN. ES PARTE DE ELLA. | |
− | UNA EXPRESIÓN | + | |
}} | }} | ||
− | |||
===Instrucción de secuenciales de asignación=== | ===Instrucción de secuenciales de asignación=== | ||
− | |||
− | |||
{{MRM_Pregunta|Title=Instrucción de asignación| | {{MRM_Pregunta|Title=Instrucción de asignación| | ||
1.- Una asignación | 1.- Una asignación | ||
<source lang=php> | <source lang=php> | ||
− | color = "red" | + | color = "red"; |
</source> | </source> | ||
[[Archivo:asignacionScratch.png]] | [[Archivo:asignacionScratch.png]] | ||
Línea 101: | Línea 98: | ||
;Ejemplos | ;Ejemplos | ||
+ | |||
{{MRM_Actividad|Title=Contador| | {{MRM_Actividad|Title=Contador| | ||
− | *Modifica el ejercicio de decir si una edad (número aleatorio entre 1 y 30) es mayor de edad o no, haciendo que nos muestre la edad | + | * Modifica el ejercicio de decir si una edad (número aleatorio entre 1 y 30) es mayor de edad o no, haciendo que nos muestre la edad. |
{{Plegable|hide | {{Plegable|hide | ||
|Posible solución | |Posible solución | ||
| | | | ||
− | |||
[[Archivo:scratchEdad2.png]] | [[Archivo:scratchEdad2.png]] | ||
}} | }} | ||
Línea 112: | Línea 109: | ||
{{MRM_Actividad|Title=Tabla de multiplicar| | {{MRM_Actividad|Title=Tabla de multiplicar| | ||
− | *Genera un número aleatorio | + | * Genera un número aleatorio y muestra su tabla de multiplicar. |
{{Plegable|hide | {{Plegable|hide | ||
|Posible solución | |Posible solución | ||
| | | | ||
− | |||
[[Archivo:tablaMultiplicar.png]] | [[Archivo:tablaMultiplicar.png]] | ||
}} | }} | ||
Línea 122: | Línea 118: | ||
===Instrucción de secuenciales de declaración de bloques=== | ===Instrucción de secuenciales de declaración de bloques=== | ||
− | *Declarar un bloque es una acción muy frecuente en programación | + | * Declarar un bloque es una acción muy frecuente en programación. |
− | *Se trata de | + | * Se trata de crear un pequeño subprograma para ser utilizado posteriormente. |
− | *Es una forma de | + | * Es una forma de organizar mejor el código y escribir un programa principal utilizando bloques. |
− | *Crear un bloque o función | + | * Crear un bloque o función es otra instrucción de declaración. |
− | *Crear bloques | + | * Crear bloques permite una programación modular y estructurada; es decir, modularizamos nuestro programa, y cada módulo o bloque usa programación estructurada (secuencia, selección, iteración). |
− | * | + | * Los bloques también se conocen como módulos o subprogramas, y más adelante concretaremos en funciones y clases (objetos) con sus métodos. |
+ | |||
{{MRM_Actividad| | {{MRM_Actividad| | ||
<source lang=bash> | <source lang=bash> | ||
− | + | declaracion_bloque(){ | |
− | accion_1 | + | accion_1; |
− | accion_2 | + | accion_2; |
...... | ...... | ||
− | + | } | |
</source> | </source> | ||
[[Archivo:bloquesScratch.png]] | [[Archivo:bloquesScratch.png]] | ||
}} | }} | ||
− | *Para crear bloques debemos | + | |
+ | * Para crear bloques, debemos seleccionar la acción. | ||
{{MRM_Actividad|Title=Creando bloques| | {{MRM_Actividad|Title=Creando bloques| | ||
− | * Vamos a hacer un programa que | + | * Vamos a hacer un programa en el que el sprite se presente, diga algo y se despida. |
− | * | + | * Queremos que el programa principal esté hecho con bloques, de forma que el programa principal sea: |
[[Archivo:bloques1.png]] | [[Archivo:bloques1.png]] | ||
}} | }} | ||
===Crear clones=== | ===Crear clones=== | ||
− | *Esta es una práctica que se hace en | + | * Esta es una práctica que se hace en Scratch. |
− | *En la programación estructurada también lo haremos cuando tengamos una clase | + | * En la programación estructurada, también lo haremos cuando tengamos una clase y creemos diferentes objetos de la misma clase. |
− | *Consiste en duplicar todo el elemento (tanto gráfico como funcional) | + | * Consiste en duplicar todo el elemento (tanto gráfico como funcional). |
− | *Es conveniente siempre, después de crear un | + | * Es conveniente siempre, después de crear un clon, eliminarlo. |
− | *Vamos a ver cómo se hace en este entorno de programación | + | * Vamos a ver cómo se hace en este entorno de programación. |
− | {{MRM_Actividad|Title=Crear un | + | |
− | *La ficha o instrucción | + | {{MRM_Actividad|Title=Crear un clon en Scratch| |
+ | * La ficha o instrucción se encuentra en '''''control'''''. | ||
[[Archivo:crear_clone.png]] | [[Archivo:crear_clone.png]] | ||
}} | }} | ||
− | |||
{{MRM_Actividad|Title=Hacer una nevada mediante clones| | {{MRM_Actividad|Title=Hacer una nevada mediante clones| | ||
− | *Elige un sprite de '''''Snowflake''''' | + | * Elige un sprite de '''''Snowflake'''''. |
[[Archivo:snowflake.png]] | [[Archivo:snowflake.png]] | ||
{{Plegable|hide | {{Plegable|hide | ||
Línea 168: | Línea 166: | ||
===Comunicación entre sprites=== | ===Comunicación entre sprites=== | ||
− | *Aunque sea un aspecto | + | * Aunque sea un aspecto propio de Scratch, es necesario ver cómo los diferentes sprites u objetos pueden comunicarse. |
− | + | Por ejemplo, cuando ocurre una determinada situación en un sprite y otros reciben una comunicación de ello. | |
− | *Es una forma de hacer que los diferentes elementos | + | * Es una forma de hacer que los diferentes elementos puedan interactuar entre sí. |
− | *Hasta ahora | + | * Hasta ahora hemos visto cómo las fichas o instrucciones son para cada sprite individual. |
[[Archivo:bloques_scratch.png|center|500px]] | [[Archivo:bloques_scratch.png|center|500px]] | ||
− | * | + | |
− | *Para ello crearemos un mensaje | + | * Sin embargo, es común que desde un sprite queramos saber si a otro le ha ocurrido algo en particular. |
+ | * Para ello, crearemos un mensaje. | ||
[[Archivo:crear_mensaje.png]] | [[Archivo:crear_mensaje.png]] | ||
− | *Una vez creado, | + | |
− | *En el otro | + | * Una vez creado, el objeto enviará el mensaje en el momento que queramos (el evento que controlamos). |
+ | * En el otro sprite, podemos establecer la condición de recibir el mensaje. | ||
[[Archivo:recibir_mensaje.png]] | [[Archivo:recibir_mensaje.png]] | ||
+ | |||
{{MRM_Actividad|Title=Prueba con mensajes| | {{MRM_Actividad|Title=Prueba con mensajes| | ||
− | *Podemos añadir un botón (sprite)en | + | * Podemos añadir un botón (sprite) en cualquiera de nuestros ejemplos previos, por ejemplo, el muñeco que se presentaba. |
− | * | + | * Al hacer clic en él, que desaparezca el botón y empiece el programa. |
}} | }} | ||
− | |||
</div> | </div> |
Última revisión de 10:20 29 oct 2024
Tip: Este tipo de bucles son bucles infinitos
Tip: Este tipo de bucles son contadores
Tip: Este tipo de bucles son bucles con condición booleana
|
|
Contenido
Variables
- Una vez creada la variable, la utilizaremos de dos maneras:
- Para asignarle un valor
- Para operar con ellas.
Aquí aparece un nuevo término de programación que son expresiones.
Una expresión es un conjunto de valores y operadores que, al evaluarse, da como resultado un valor. |
expresión aritmética
| |
8+5; 9*7; 9/7; 7-6; 9%4;
|
expresiones booleanas
| |
8>5; 9<7; No Verdad; Expresión_1 AND Expresión_2;
|
expresiones sobre cadenas
| |
"Cadena una " unir "Cadena 2"; contarCaracteres("cadena");
|
Instrucción de secuenciales de asignación
- Ejemplos
Instrucción de secuenciales de declaración de bloques
- Declarar un bloque es una acción muy frecuente en programación.
- Se trata de crear un pequeño subprograma para ser utilizado posteriormente.
- Es una forma de organizar mejor el código y escribir un programa principal utilizando bloques.
- Crear un bloque o función es otra instrucción de declaración.
- Crear bloques permite una programación modular y estructurada; es decir, modularizamos nuestro programa, y cada módulo o bloque usa programación estructurada (secuencia, selección, iteración).
- Los bloques también se conocen como módulos o subprogramas, y más adelante concretaremos en funciones y clases (objetos) con sus métodos.
- Para crear bloques, debemos seleccionar la acción.
Crear clones
- Esta es una práctica que se hace en Scratch.
- En la programación estructurada, también lo haremos cuando tengamos una clase y creemos diferentes objetos de la misma clase.
- Consiste en duplicar todo el elemento (tanto gráfico como funcional).
- Es conveniente siempre, después de crear un clon, eliminarlo.
- Vamos a ver cómo se hace en este entorno de programación.
Comunicación entre sprites
- Aunque sea un aspecto propio de Scratch, es necesario ver cómo los diferentes sprites u objetos pueden comunicarse.
Por ejemplo, cuando ocurre una determinada situación en un sprite y otros reciben una comunicación de ello.
- Es una forma de hacer que los diferentes elementos puedan interactuar entre sí.
- Hasta ahora hemos visto cómo las fichas o instrucciones son para cada sprite individual.
- Sin embargo, es común que desde un sprite queramos saber si a otro le ha ocurrido algo en particular.
- Para ello, crearemos un mensaje.
- Una vez creado, el objeto enviará el mensaje en el momento que queramos (el evento que controlamos).
- En el otro sprite, podemos establecer la condición de recibir el mensaje.