SlideShare una empresa de Scribd logo
1 de 43
Descargar para leer sin conexión
3
Repetir las líneas de los códigos de programación es una tarea común. Es habitual agregar un bucle
alrededor de una sección de código en el código de programación.
La mayoría de los lenguajes de programación tienen 3 métodos de bucle básicos. Examinaremos todos ellos
durante el curso.
4
Podemos utilizar cualquiera de los bucles para cualquier ocasión, pero algunos de ellos son más indicados
para casos concretos.
5
Recuerde que la condición solo debe devolver true o false.
6
7
Mientras que una variable de instancia tiene visibilidad en todo el conjunto de la clase (es accesible), una
variable local no se puede ver fuera de los paréntesis dentro de los que se declaró. Esto se conoce
normalmente como ámbito.
8
La letra "i" se suele utilizar como nombre de la variable local. Si tiene un bucle dentro de otro bucle, se
suele utilizar la letra "j" y, a continuación, la letra "k". Esta letra se utiliza en programación debido a sus
orígenes en el campo de las matemáticas, en el que designaba valores enteros. Posteriormente, fue
adoptada por el lenguaje Fortran.
9
Veremos un ejemplo en la siguiente diapositiva.
10
Es posible que las personas con conocimientos de programación detecten un problema. Abordaremos este
asunto en próximas diapositivas.
11
12
Recuerde que i = i + 1 normalmente se escribe como i++;
Si nos olvidamos de agregar esta línea, el código nunca detendrá el bucle. Esto se denomina bucle infinito.
13
Como se encuentra en el constructor, solo se llamará una vez.
14
15
Los métodos getWidth() y getHeight() devuelven el ancho y la altura actuales del mundo. Por lo tanto, si
cambiásemos las dimensiones del mundo, podríamos acceder a estas sin cambiar nuestro código.
16
Debe volver a comprobar siempre la lógica y el código para asegurarse de que el bucle solo se ejecutará las
veces que espera.
17
Básicamente, debemos alternar entre 1 de 2 imágenes, a menos que estemos girando. Si estamos girando,
se muestra la imagen de giro izquierda o derecha.
18
Básicamente, debemos alternar entre 1 de 2 imágenes, a menos que estemos girando. Si estamos girando,
se muestra la imagen de giro izquierda o derecha.
19
Al guardar el estado de una acción actual, solemos utilizar una variable de clase.
20
Resulta útil utilizar nombres de variables de clase óptimos, especialmente al definir valores booleanos.
Podríamos haber llamado a la variable notTurning, pero resulta más complicado comprender el significado
real de notTurning que el de isTurning.
21
Recuerde que Java distingue entre mayúsculas y minúsculas, por lo que "BeeLeft.png" no es lo mismo que
"beeLeft.png". Compruebe que esté usando las mayúsculas y minúsculas correctamente para sus archivos
de imagen y sonido.
22
En este punto, la abeja seguirá intentando que continúe la animación durante el giro.
23
&& (significa "y") solo devuelve true si las sentencias a ambos lados de && son true.
24
Puede crear tablas de verdad para AND/NOT/OR. Para ello, siga las instrucciones que se describen a
continuación:
Para AND/OR puede utilizar 2 entradas de true y false, y mostrar el resultado.
POR LO TANTO
TRUE TRUE
TRUE FALSE
FALSE TRUE
FALSE FALSE
Son las 4 entradas posibles. Para AND/OR se muestra el valor booleano resultante.
25
Recuerde que && representa "y", y solo devolverá true si ambas partes son true.
26
Cuanto mayor sea el número de imágenes, más suave será la animación.
27
Recuerde que en una sentencia if-else, solo una de las secciones de código puede ejecutarse.
28
A medida que desarrolle sus habilidades y conocimientos en java, comprobará que existen estructuras más
avanzadas para almacenar varias variables en una sola variable.
29
Las cadenas contienen cualquier dato alfanumérico. Por lo tanto, también podríamos almacenar "Joe! 1"
30
Para definir una matriz se utilizan corchetes. El tipo delante de los corchetes es el tipo que puede
almacenar cada celda de la matriz. En el caso anterior, String[] configura una matriz que almacena cadenas.
31
Antes de utilizar una matriz, tendremos que configurar el máximo número de celdas que estarán
disponibles.
32
Este es un ejemplo de la inicialización de una variable de matriz. Podríamos haber escrito
String[] studentnames = new String[4];
studentnames[0] = "Joe";
studentnames[1] = "Debbie";
studentnames[2] = "Ermal";
studentnames[3] = "Besa";
Tenga en cuenta que el primer elemento de una matriz se inicia en el índice 0.
33
Se generará un error si intenta acceder a un elemento de la matriz fuera de rango. En este ejemplo, el
rango del elemento va de 0 a 3.
34
Recuerde que esta matriz se declara como una matriz String. Si se devuelve un elemento de la matriz, este
valor será una cadena
35
Esto implica que podamos almacenar todas nuestras imágenes en una variable.
36
Podríamos declarar una constante para el máximo número de imágenes en lugar de utilizar el valor 4. De
este modo, el código sería más legible y mucho más fácil de cambiar posteriormente.
Si tuviésemos la constante MAXIMAGES = 4;
Podríamos cambiar el código por
….. = new GreenfootImage[MAXIMAGES];
37
La imagen 2 se utiliza dos veces, ya que deseamos mostrar las imágenes - abeja -> abeja1 -> abeja2 ->
abeja1 y, a continuación, repetir.
38
La segunda solución sería más fácil para agregar más imágenes. La ("bee" + i + ".png"); se conoce como una
concatenación de cadenas. Une las cadenas. Por lo tanto, si i=1, obtendríamos "bee1.png". En el ejemplo
de bucle while, se copia la imagen bee1.png y se denomina bee3.png.
currentimage sería un campo de clase.
39
Tenga en cuenta que el método animateBee() ahora manejaría cualquier cantidad de imágenes. Solo
necesitaríamos cambiar el valor de índice 3 por un nuevo valor. En este caso, sería mejor sustituir el 3 por
una constante.
if (currentimage == MAX_IMAGES-1)…
MAX_IMAGES se declararía como un campo de clase
private final int MAX_IMAGES = 4;
A continuación, actualizaríamos nuestro código para utilizar esta constante en lugar de 3. Esto hace que
nuestro código sea más legible y fácil de mantener.
40
41
42
Greenfoot 10

Más contenido relacionado

La actualidad más candente (20)

Greenfoot 8
Greenfoot 8Greenfoot 8
Greenfoot 8
 
PRACTICA 8 ALICE
PRACTICA 8 ALICEPRACTICA 8 ALICE
PRACTICA 8 ALICE
 
Greenfoot 8
Greenfoot 8Greenfoot 8
Greenfoot 8
 
Greenfoot 2
Greenfoot 2Greenfoot 2
Greenfoot 2
 
Alice 6
Alice 6Alice 6
Alice 6
 
Greenfoot 6
Greenfoot 6Greenfoot 6
Greenfoot 6
 
Greenfoot 2
Greenfoot 2Greenfoot 2
Greenfoot 2
 
Alice 3
Alice 3Alice 3
Alice 3
 
Greenfoot 1
Greenfoot 1Greenfoot 1
Greenfoot 1
 
Alice 1
Alice 1Alice 1
Alice 1
 
Greenfoot 4
Greenfoot 4Greenfoot 4
Greenfoot 4
 
Greenfoot 3
Greenfoot 3Greenfoot 3
Greenfoot 3
 
Alice 14
Alice 14Alice 14
Alice 14
 
PRACTICA 6 ALICE
PRACTICA 6 ALICEPRACTICA 6 ALICE
PRACTICA 6 ALICE
 
Alice 11
Alice 11Alice 11
Alice 11
 
Alice 12
Alice 12Alice 12
Alice 12
 
Alice 10
Alice 10Alice 10
Alice 10
 
Alice 11
Alice 11Alice 11
Alice 11
 
PRACTICA 11 ALICE
PRACTICA 11 ALICEPRACTICA 11 ALICE
PRACTICA 11 ALICE
 
Alice 8
Alice 8Alice 8
Alice 8
 

Destacado (10)

Greenfoot 5
Greenfoot 5Greenfoot 5
Greenfoot 5
 
Greenfoot 4
Greenfoot 4Greenfoot 4
Greenfoot 4
 
Presentación
PresentaciónPresentación
Presentación
 
Alice 14
Alice 14Alice 14
Alice 14
 
Alice 2
Alice 2Alice 2
Alice 2
 
Alice 5
Alice 5Alice 5
Alice 5
 
Alice 8
Alice 8Alice 8
Alice 8
 
Alice 10
Alice 10Alice 10
Alice 10
 
Alice 9
Alice 9Alice 9
Alice 9
 
Alice 7
Alice 7Alice 7
Alice 7
 

Similar a Greenfoot 10 (20)

Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)
 
Jf 3 9_sg_esp(2)(3) 9
Jf 3 9_sg_esp(2)(3) 9Jf 3 9_sg_esp(2)(3) 9
Jf 3 9_sg_esp(2)(3) 9
 
Greenfoot 9
Greenfoot 9Greenfoot 9
Greenfoot 9
 
Pra9
Pra9Pra9
Pra9
 
Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)
 
CAPITULO 9 DE GREENFOOT
CAPITULO 9 DE GREENFOOTCAPITULO 9 DE GREENFOOT
CAPITULO 9 DE GREENFOOT
 
Greenfoot 9
Greenfoot 9Greenfoot 9
Greenfoot 9
 
Capitulo9 greenfoot
Capitulo9  greenfootCapitulo9  greenfoot
Capitulo9 greenfoot
 
Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)Jf 3 9_sg_esp(2)(3)
Jf 3 9_sg_esp(2)(3)
 
Capitulo 9
Capitulo 9Capitulo 9
Capitulo 9
 
Capitulo 9
Capitulo 9Capitulo 9
Capitulo 9
 
leccion 9
leccion 9leccion 9
leccion 9
 
Greenfoot 9
Greenfoot 9Greenfoot 9
Greenfoot 9
 
CAPITULO 9 GREENFOOT
CAPITULO 9 GREENFOOTCAPITULO 9 GREENFOOT
CAPITULO 9 GREENFOOT
 
Constantes y variables enitmar
Constantes y variables enitmarConstantes y variables enitmar
Constantes y variables enitmar
 
CAPITULO 10 DE ALICE
CAPITULO 10 DE ALICECAPITULO 10 DE ALICE
CAPITULO 10 DE ALICE
 
Jf 2 10_sg_esp(4)
Jf 2 10_sg_esp(4)Jf 2 10_sg_esp(4)
Jf 2 10_sg_esp(4)
 
Capitulo 10
Capitulo 10Capitulo 10
Capitulo 10
 
Alice 10
Alice 10Alice 10
Alice 10
 
Alice capitulo10
Alice capitulo10Alice capitulo10
Alice capitulo10
 

Más de Christian Medina (20)

Uniforme
UniformeUniforme
Uniforme
 
Presentación
PresentaciónPresentación
Presentación
 
Logo y poster
Logo y posterLogo y poster
Logo y poster
 
Invitacion
InvitacionInvitacion
Invitacion
 
Graficas
GraficasGraficas
Graficas
 
Engargolado
EngargoladoEngargolado
Engargolado
 
Encuesta
EncuestaEncuesta
Encuesta
 
Conferencia
ConferenciaConferencia
Conferencia
 
Campaña
CampañaCampaña
Campaña
 
Tabla 4
Tabla 4Tabla 4
Tabla 4
 
Tabla 14
Tabla 14Tabla 14
Tabla 14
 
Tabla 11
Tabla 11Tabla 11
Tabla 11
 
Tabla 13
Tabla 13Tabla 13
Tabla 13
 
Tabla 12
Tabla 12Tabla 12
Tabla 12
 
Tabla 10
Tabla 10Tabla 10
Tabla 10
 
Tabla 9
Tabla 9Tabla 9
Tabla 9
 
Tabla 8
Tabla 8Tabla 8
Tabla 8
 
Tabla 7
Tabla 7Tabla 7
Tabla 7
 
Tabla 3
Tabla 3Tabla 3
Tabla 3
 
Tabla 6
Tabla 6Tabla 6
Tabla 6
 

Último

Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosJonathanCovena1
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 

Último (20)

Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 

Greenfoot 10

  • 1.
  • 2.
  • 3. 3
  • 4. Repetir las líneas de los códigos de programación es una tarea común. Es habitual agregar un bucle alrededor de una sección de código en el código de programación. La mayoría de los lenguajes de programación tienen 3 métodos de bucle básicos. Examinaremos todos ellos durante el curso. 4
  • 5. Podemos utilizar cualquiera de los bucles para cualquier ocasión, pero algunos de ellos son más indicados para casos concretos. 5
  • 6. Recuerde que la condición solo debe devolver true o false. 6
  • 7. 7
  • 8. Mientras que una variable de instancia tiene visibilidad en todo el conjunto de la clase (es accesible), una variable local no se puede ver fuera de los paréntesis dentro de los que se declaró. Esto se conoce normalmente como ámbito. 8
  • 9. La letra "i" se suele utilizar como nombre de la variable local. Si tiene un bucle dentro de otro bucle, se suele utilizar la letra "j" y, a continuación, la letra "k". Esta letra se utiliza en programación debido a sus orígenes en el campo de las matemáticas, en el que designaba valores enteros. Posteriormente, fue adoptada por el lenguaje Fortran. 9
  • 10. Veremos un ejemplo en la siguiente diapositiva. 10
  • 11. Es posible que las personas con conocimientos de programación detecten un problema. Abordaremos este asunto en próximas diapositivas. 11
  • 12. 12
  • 13. Recuerde que i = i + 1 normalmente se escribe como i++; Si nos olvidamos de agregar esta línea, el código nunca detendrá el bucle. Esto se denomina bucle infinito. 13
  • 14. Como se encuentra en el constructor, solo se llamará una vez. 14
  • 15. 15
  • 16. Los métodos getWidth() y getHeight() devuelven el ancho y la altura actuales del mundo. Por lo tanto, si cambiásemos las dimensiones del mundo, podríamos acceder a estas sin cambiar nuestro código. 16
  • 17. Debe volver a comprobar siempre la lógica y el código para asegurarse de que el bucle solo se ejecutará las veces que espera. 17
  • 18. Básicamente, debemos alternar entre 1 de 2 imágenes, a menos que estemos girando. Si estamos girando, se muestra la imagen de giro izquierda o derecha. 18
  • 19. Básicamente, debemos alternar entre 1 de 2 imágenes, a menos que estemos girando. Si estamos girando, se muestra la imagen de giro izquierda o derecha. 19
  • 20. Al guardar el estado de una acción actual, solemos utilizar una variable de clase. 20
  • 21. Resulta útil utilizar nombres de variables de clase óptimos, especialmente al definir valores booleanos. Podríamos haber llamado a la variable notTurning, pero resulta más complicado comprender el significado real de notTurning que el de isTurning. 21
  • 22. Recuerde que Java distingue entre mayúsculas y minúsculas, por lo que "BeeLeft.png" no es lo mismo que "beeLeft.png". Compruebe que esté usando las mayúsculas y minúsculas correctamente para sus archivos de imagen y sonido. 22
  • 23. En este punto, la abeja seguirá intentando que continúe la animación durante el giro. 23
  • 24. && (significa "y") solo devuelve true si las sentencias a ambos lados de && son true. 24
  • 25. Puede crear tablas de verdad para AND/NOT/OR. Para ello, siga las instrucciones que se describen a continuación: Para AND/OR puede utilizar 2 entradas de true y false, y mostrar el resultado. POR LO TANTO TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE Son las 4 entradas posibles. Para AND/OR se muestra el valor booleano resultante. 25
  • 26. Recuerde que && representa "y", y solo devolverá true si ambas partes son true. 26
  • 27. Cuanto mayor sea el número de imágenes, más suave será la animación. 27
  • 28. Recuerde que en una sentencia if-else, solo una de las secciones de código puede ejecutarse. 28
  • 29. A medida que desarrolle sus habilidades y conocimientos en java, comprobará que existen estructuras más avanzadas para almacenar varias variables en una sola variable. 29
  • 30. Las cadenas contienen cualquier dato alfanumérico. Por lo tanto, también podríamos almacenar "Joe! 1" 30
  • 31. Para definir una matriz se utilizan corchetes. El tipo delante de los corchetes es el tipo que puede almacenar cada celda de la matriz. En el caso anterior, String[] configura una matriz que almacena cadenas. 31
  • 32. Antes de utilizar una matriz, tendremos que configurar el máximo número de celdas que estarán disponibles. 32
  • 33. Este es un ejemplo de la inicialización de una variable de matriz. Podríamos haber escrito String[] studentnames = new String[4]; studentnames[0] = "Joe"; studentnames[1] = "Debbie"; studentnames[2] = "Ermal"; studentnames[3] = "Besa"; Tenga en cuenta que el primer elemento de una matriz se inicia en el índice 0. 33
  • 34. Se generará un error si intenta acceder a un elemento de la matriz fuera de rango. En este ejemplo, el rango del elemento va de 0 a 3. 34
  • 35. Recuerde que esta matriz se declara como una matriz String. Si se devuelve un elemento de la matriz, este valor será una cadena 35
  • 36. Esto implica que podamos almacenar todas nuestras imágenes en una variable. 36
  • 37. Podríamos declarar una constante para el máximo número de imágenes en lugar de utilizar el valor 4. De este modo, el código sería más legible y mucho más fácil de cambiar posteriormente. Si tuviésemos la constante MAXIMAGES = 4; Podríamos cambiar el código por ….. = new GreenfootImage[MAXIMAGES]; 37
  • 38. La imagen 2 se utiliza dos veces, ya que deseamos mostrar las imágenes - abeja -> abeja1 -> abeja2 -> abeja1 y, a continuación, repetir. 38
  • 39. La segunda solución sería más fácil para agregar más imágenes. La ("bee" + i + ".png"); se conoce como una concatenación de cadenas. Une las cadenas. Por lo tanto, si i=1, obtendríamos "bee1.png". En el ejemplo de bucle while, se copia la imagen bee1.png y se denomina bee3.png. currentimage sería un campo de clase. 39
  • 40. Tenga en cuenta que el método animateBee() ahora manejaría cualquier cantidad de imágenes. Solo necesitaríamos cambiar el valor de índice 3 por un nuevo valor. En este caso, sería mejor sustituir el 3 por una constante. if (currentimage == MAX_IMAGES-1)… MAX_IMAGES se declararía como un campo de clase private final int MAX_IMAGES = 4; A continuación, actualizaríamos nuestro código para utilizar esta constante en lugar de 3. Esto hace que nuestro código sea más legible y fácil de mantener. 40
  • 41. 41
  • 42. 42