Unelte utilizator

Unelte site


module:06-conditii-in-programare:lectia-03

Diferențe

Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.

Link către această vizualizare comparativă

Both sides previous revision Previous revision
Next revision
Previous revision
module:06-conditii-in-programare:lectia-03 [2014/03/07 20:14]
razvan [Bonus 2: TODO]
module:06-conditii-in-programare:lectia-03 [2016/03/13 10:50] (curent)
anca.balutoiu
Linia 46: Linia 46:
 Mesajele în Scratch sunt transmise de la un sprite la alt sprite în momentul producerii unui eveniment. De exemplu, dacă un sprite a realizat o acțiune atunci dorește să comunice acea acțiune și altui sprite în forma unui mesaj. Pentru aceasta folosim blocurile "​broadcast message"​ și "When I receive message",​ din setul "​Events"​. Mesajele în Scratch sunt transmise de la un sprite la alt sprite în momentul producerii unui eveniment. De exemplu, dacă un sprite a realizat o acțiune atunci dorește să comunice acea acțiune și altui sprite în forma unui mesaj. Pentru aceasta folosim blocurile "​broadcast message"​ și "When I receive message",​ din setul "​Events"​.
  
-Blocul "​broadcast message"​ trimite un mesaj către toți cei care așteaptă mesaj. Blocul "When I receive message"​ așteaptă un mesaj să fie trimis; programul este blocat în blocul "When I receive message"​ până când mesajul este blocat.+Blocul "​broadcast message"​ trimite un mesaj către toți cei care așteaptă mesaj. Blocul "When I receive message"​ așteaptă un mesaj să fie primit; programul este blocat în blocul "When I receive message"​ până când mesajul este blocat.
  
 Hai să vedem cum funcționează în [[http://​scratch.mit.edu/​projects/​18937575/​|exemplul Scratch de aici]]. Deschide exemplul și creează un remix în Scratch. Hai să vedem cum funcționează în [[http://​scratch.mit.edu/​projects/​18937575/​|exemplul Scratch de aici]]. Deschide exemplul și creează un remix în Scratch.
Linia 62: Linia 62:
  
 Acum că ai văzut cum funcționează mesajele în Scratch, hai să facem programul mai bun. Pentru început fă în așa fel încât, după ce pisica prinde cele trei mingi, să fie resetat scorul la zero și mingile să reapară. Acum că ai văzut cum funcționează mesajele în Scratch, hai să facem programul mai bun. Pentru început fă în așa fel încât, după ce pisica prinde cele trei mingi, să fie resetat scorul la zero și mingile să reapară.
 +
 +<note tip>
 +Fă în așa fel încât, după ce este atinsă ultima minge, adică după ce scorul devine 3, să aibă loc următoarele:​
 +  * să fie resetat scorul la zero (adică să fie pusă variabila ''​scor''​ la valoarea zero)
 +  * să fie trimis un mesaj ''​game-over''​ folosind blocul ''​broadcast''​.
 +
 +În momentul în care o minge primește mesajul ''​game-over'',​ folosind blocul ''​When I receive game-over''​ atunci mingea reapare.
 +
 +Trebuie să implementezi aceste schimbări pentru programul tuturor celor trei mingi.
 +
 +Poți face drag pe un program peste alt sprite ca să copiezi programul în acel sprite.
 +</​note>​
 ===== 3. Resetare poziție pisică ===== ===== 3. Resetare poziție pisică =====
  
 Continuă programul dinainte și fă în așa fel încât să fie pusă pisică în poziția centrală a planșei după ce toate mingile sunt atinse. Continuă programul dinainte și fă în așa fel încât să fie pusă pisică în poziția centrală a planșei după ce toate mingile sunt atinse.
  
 +<note tip>
 +În programul sprite-ului pisică trebuie să ai, de asemenea, un bloc ''​When I receive game-over''​. Când pisica primește mesajul ''​game-over'',​ este plasată în poziția centrală a planșei.
 +</​note>​
 ===== 4. Mesaje diferite din partea câinelui ===== ===== 4. Mesaje diferite din partea câinelui =====
  
Linia 73: Linia 88:
   * Bravo, ai strans toate mingile.   * Bravo, ai strans toate mingile.
  
 +<note tip>
 +Cel mai simplu este să pui un set de blocuri ''​if''​ în programul sprite-ului câine. În conditii verifici dacă scorul este ''​1'',​ ''​2''​ sau ''​3''​.
 +</​note>​
 ===== 5. Mai multe mingi ===== ===== 5. Mai multe mingi =====
  
-Continuă programul anterior și pune 5 mingi pe planșă. Trebuie să ajungă acum scorul la 5 înainte să fie resetat iar câinele să spună, pe rând:+Continuă programul anterior și pune 5 mingi pe planșă. 
 + 
 +<note tip> 
 +Poți da click dreapta pe sprite-ul minge și selecta opțiunea "​Duplicate"​. 
 +</​note>​ 
 + 
 +Trebuie să ajungă acum scorul la 5 înainte să fie resetat iar câinele să spună, pe rând:
   * Bravo, mai ai patru mingi de strans!   * Bravo, mai ai patru mingi de strans!
   * Bravo, mai ai trei mingi de strans!   * Bravo, mai ai trei mingi de strans!
Linia 81: Linia 105:
   * Bravo, mai ai o singura minge de strans!   * Bravo, mai ai o singura minge de strans!
   * Bravo, ai strans toate mingile.   * Bravo, ai strans toate mingile.
 +
 +<note tip>
 +Parcurge toate programele sprite-urilor și fă-le să meargă cu 5 mingi, nu doar cu 3.
 +</​note>​
 ===== Bonus 1: Scor cu cerculețe roșii ===== ===== Bonus 1: Scor cu cerculețe roșii =====
  
Linia 86: Linia 114:
  
 Continuați programul și adăugați această funcționalitate:​ să ținem scorul cu cerculețele roșii. Pune cerculețele în stânga sus. Nu mai afișa variabila "​scor";​ este mai frumos să apară doar cerculețele. Continuați programul și adăugați această funcționalitate:​ să ținem scorul cu cerculețele roșii. Pune cerculețele în stânga sus. Nu mai afișa variabila "​scor";​ este mai frumos să apară doar cerculețele.
 +
 +
 +Cel mai bine scrii programul pentru un cerculeț, apoi îl duplici și îl modifici.
 +
 +Ai nevoie de trei blocuri ''​When ...''​ pentru fiecare cerculeț:
 +  * ''​When green flag clicked''​
 +  * ''​When I receive minge-atinsa''​
 +  * ''​When I receive game-over''​
 +
 ===== Bonus 2: Încă un sprite și alternanță la strâns mingi ===== ===== Bonus 2: Încă un sprite și alternanță la strâns mingi =====
  
Linia 96: Linia 133:
  
 <note tip> <note tip>
-Folosește un mesaj ca să fie transmis când e rândul pisicii ​și apoi când e rândul fluturelui.+Programul pentru fluture este similar celui pentru pisică. Copiază programul din pisică cu drag peste sprite-ul fluture. 
 + 
 +Este dificil să folosești mesaje. Cel mai bine, în funcție de tipul scorului, decizi ce faci: 
 +* dacă scorul este par atunci ​te miști, spre exemplu, cu pisica 
 +* dacă scorul este impar atunci te miști, spre exemplu, cu fluturele 
 + 
 +E nevoie de actualizări ​și în programul sprite-urilor de tip minge. Acestea trebuie să crească scorul dacă sunt atinse de pisică **SAU** de fluture.
 </​note>​ </​note>​
  
 +===== Bonus 3: Joc la alegere =====
 +
 +Gândește-te la un program simplu care să folosească mesaje și scrie-l în Scratch.
 ===== Lucru pentru acasă ===== ===== Lucru pentru acasă =====
 +
 +Implementează [[http://​www.ponggame.org/​|jocul Pong]] în Scratch.
module/06-conditii-in-programare/lectia-03.1394216080.txt.gz · Ultima modificare: 2014/03/07 20:14 de către razvan