Pong 3

5

Click here to load reader

description

TUTORIAL

Transcript of Pong 3

Page 1: Pong  3

12/10/2014 Ateneu - Materials i recursos per a la formació - Departament d'Ensenyament - D209 - Scratch: Introducció a la programació d'ordinadors

http://ateneu.xtec.cat/wikiform/wikiexport/cursos/curriculum/eso_btx/d209/modul_2/practica_3# 1/5

D209 -‐‑ Scratch: Introducció a la programaciód'ordinadorsMòdul 2 -‐‑ Pràctica 3

El Pong (III)Ara volem tenir el que usualment s'anomenen "vides". No acabar el joc de seguida que ens passa lapilota de la barra petita, sinó permetre unes quantes equivocacions.

Això ho farem amb una altra d'aquelles capsetes que en dèiem variables. Amb una variable podrememmagatzemar el nombre de vides inicial i anar restant una vida cada cop que ens equivoquem.

Així doncs, creem una nova variable (categoria 'Variables', botó 'Nova variable')

Fixem-‐‑nos que tenim disponibles les mateixes instruccions sobre la variable 'velocitat' i sobre la variable'vides'.

Per saber a quina variable es refereix cada instrucció, cal triar-‐‑la del menú desplegable. Per exemple, sivolem inicialitzar les 'vides' al valor 3, utilitzarem 'fixar…' amb la variable 'vides'

Page 2: Pong  3

12/10/2014 Ateneu - Materials i recursos per a la formació - Departament d'Ensenyament - D209 - Scratch: Introducció a la programació d'ordinadors

http://ateneu.xtec.cat/wikiform/wikiexport/cursos/curriculum/eso_btx/d209/modul_2/practica_3# 2/5

Ara la idea és que allò que fèiem una sola vegada, ho hem de repetir tantes vegades com 'vides'tinguem. Per tant, proposarem el següent:

Separar el 'repetir fins…' que ja tenim, i afegir-‐‑ne un altre que l'englobi, és a dir, que el repetir que jateníem estigui dins del nou 'repetir fins…'

Crear l'expressió lògica que determina el final del nou 'repetir fins…'. Aquesta denotarà que el valorde la variable 'vides' sigui zero.

I així hem creat aquest programa. Proveu-‐‑lo si us plau.

Page 3: Pong  3

12/10/2014 Ateneu - Materials i recursos per a la formació - Departament d'Ensenyament - D209 - Scratch: Introducció a la programació d'ordinadors

http://ateneu.xtec.cat/wikiform/wikiexport/cursos/curriculum/eso_btx/d209/modul_2/practica_3# 3/5

Si ja heu provat el programa, haureu vist que NO funciona. Proveu detrobar què està malament, abans de continuar llegint!.

Esperem que hagueu pensat força i hagueu trobat vosaltres mateixos els errors. N'hi ha diversos:

1. Primer, la variable 'vides' no canvia mai. Això és absurd! Si tenim una repetició que depèn del valord'una variable, el valor d'aquesta ha de canviar dins de la repetició, en altre cas serà impossible quela condició d'acabament del 'repetir fins…' es satisfés mai!

2. Segon, les inicialitzacions han d'executar-‐‑se cada cop que comencem el joc amb vida nova, aixídoncs les hem de moure de lloc.

Aquesta figura il·lustra les modificacions

Page 4: Pong  3

12/10/2014 Ateneu - Materials i recursos per a la formació - Departament d'Ensenyament - D209 - Scratch: Introducció a la programació d'ordinadors

http://ateneu.xtec.cat/wikiform/wikiexport/cursos/curriculum/eso_btx/d209/modul_2/practica_3# 4/5

El programa queda finalment així, amb el programa de la pilota i el programa de la barra curta:

Aquest és, essencialment, el nostre Pong!

Repassem-‐‑ho:

Page 5: Pong  3

12/10/2014 Ateneu - Materials i recursos per a la formació - Departament d'Ensenyament - D209 - Scratch: Introducció a la programació d'ordinadors

http://ateneu.xtec.cat/wikiform/wikiexport/cursos/curriculum/eso_btx/d209/modul_2/practica_3# 5/5

1. Tenim tres objectes i un fons. Dels tres objectes, dos, la pilota i la barra curta, tenen associat unprograma que governa el seu comportament. Un altre, la barra llarga, és passiu i l'únic paper quejuga és el de ser detectat.

2. El gruix del programa està a la lògica de la pilota. És la pilota l'objecte actiu que més decisions hade prendre.

3. El programa de la pilota es composa de:I. Inicialització de variables ('vides' i 'velocitat'). Fixem-‐‑nos que 'vides' és modificada mentre el

programa s'executa. En canvi, el valor de 'velocitat' es fixa al principi i ja no es toca més.II. Una iteració o repetició (de vegades parlem també de "bucle") que controla quantes vides ens

queden. A cada volta d'aquest bucle, decrementem el valor de 'vides', assegurant-‐‑nos que,desprès d'un cert nombre de vides (el valor inicial de la variable 'vides'), el bucle s'acabarà.

III. Dins de la repetició mencionada al punt anterior, tenim una inicialització de partida, col·locantla pilota a la seva posició de començament del joc

IV. I també un altre bucle, que essencialment mou la pilota a la velocitat que marca la variables'velocitat', i vigila si toquem la barra curta o una vora. Si toquem la barra curta rebotemcalculant nosaltres el rebot, i si toca la vora rebota gràcies a la instrucció corresponent.

I això és tot.