Unelte utilizator

Unelte site


module:07-bucle-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
Last revision Both sides next revision
module:07-bucle-in-programare:lectia-03 [2014/03/29 00:30]
teobaluta
module:07-bucle-in-programare:lectia-03 [2016/02/27 18:33]
andreea șters
Linia 1: Linia 1:
-====== Lecția ​3: Condiții în Khan ======+====== Lecția ​4: Condiții în Khan ======
  
 Până acum am folosit Khan pentru desenarea unor figuri sau operații simple din matematică. Așa cum foloseam Scratch pentru a face jocuri ce aveau o anumită logică, așa putem scrie în Khan aceea logică. Diferența cea mai mare dintre Scratch și Khan este că în Khan nu mai avem blocuri predefinite de instrucțiuni și nu le mai putem folosi prin "drag and drop" (adică nu mai putem da click pe ele și să le punem într-un spațiu de Scripts pentru un obiect). Acum în Khan vom avea mai mare libertatea de a scrie codul, dar asta introduce un grad de complexitate mai mare. Până acum am folosit Khan pentru desenarea unor figuri sau operații simple din matematică. Așa cum foloseam Scratch pentru a face jocuri ce aveau o anumită logică, așa putem scrie în Khan aceea logică. Diferența cea mai mare dintre Scratch și Khan este că în Khan nu mai avem blocuri predefinite de instrucțiuni și nu le mai putem folosi prin "drag and drop" (adică nu mai putem da click pe ele și să le punem într-un spațiu de Scripts pentru un obiect). Acum în Khan vom avea mai mare libertatea de a scrie codul, dar asta introduce un grad de complexitate mai mare.
 +
 +O variabilă se creează așa:
 +<code javascript>​
 +var variabila;
 +</​code>​
 +
 +Pentru a-i da o valoarea la creare, folosim operatorul de atribuire ''​=''​ în felul următor:
 +<code javascript>​
 +var variabila = 5;
 +</​code>​
 +Acum variabila este 5. O poți afișa folosind instrucțiunile de mai jos:
 +<code javascript>​
 +textSize(30);​
 +fill(255, 0, 0);
 +text(variabila,​ 5, 100);
 +</​code>​
  
 <note warning>​La sfârșitul fiecărei instrucțiuni/​actiuni din Khan vei avea semnul ''​%%;​%%''​!</​note>​ <note warning>​La sfârșitul fiecărei instrucțiuni/​actiuni din Khan vei avea semnul ''​%%;​%%''​!</​note>​
Linia 13: Linia 29:
 ===== Recapitulare ===== ===== Recapitulare =====
  
-<note warning>​Intră pe khanacademy.org cu contul personal și salvează-ți programele! </​note>​+<note warning>​Intră pe khanacademy.org cu contul personal ​(dacă nu mai știi utilizatorul și parola, întreabă unul dintre instructori) ​și salvează-ți programele! </​note>​
  
 Desenează o fată zâmbitoare (smiley) în Khan! Desenează o fată zâmbitoare (smiley) în Khan!
   - Desenează două ovale pentru ochi cu instrucțiunea ''​ellipse(...)''​ și colorează-le cu ''​fill(...)''​   - Desenează două ovale pentru ochi cu instrucțiunea ''​ellipse(...)''​ și colorează-le cu ''​fill(...)''​
-  - Deseanză un pătrat sau oval pentru nas. Colorează-l!+  - Desenează un pătrat sau oval pentru nas. Colorează-l!
   - Pentru zâmbet putem folosi 3 linii groase: grosimea seteaz-o cu ''​strokeWeight'',​ iar culoarea cu ''​stroke''​.   - Pentru zâmbet putem folosi 3 linii groase: grosimea seteaz-o cu ''​strokeWeight'',​ iar culoarea cu ''​stroke''​.
   - Încadrează totul într-un oval pentru conturul feței.   - Încadrează totul într-un oval pentru conturul feței.
Linia 24: Linia 40:
  
 <note important>​Dacă vrei să continui aici sau acasă, un proiect interesant propus de Khan Academy este să desenezi mâncarea de pe o masă. Intră la [[https://​www.khanacademy.org/​cs/​programming/​coloring/​p/​project-whats-for-dinner]]:​ numele proiectului s-ar traduce în "Ce avem la cină?"​. Lucrează la el și dă click pe **Save as a spin-off** pentru a salva modificările tale pe acest proiect!</​note>​ <note important>​Dacă vrei să continui aici sau acasă, un proiect interesant propus de Khan Academy este să desenezi mâncarea de pe o masă. Intră la [[https://​www.khanacademy.org/​cs/​programming/​coloring/​p/​project-whats-for-dinner]]:​ numele proiectului s-ar traduce în "Ce avem la cină?"​. Lucrează la el și dă click pe **Save as a spin-off** pentru a salva modificările tale pe acest proiect!</​note>​
 +
 ===== Tutorial ===== ===== Tutorial =====
  
-=== 1. Variabile în Khan ===+==== 1. Variabile în Khan ====
  
 În Khan, nu mai avem blocuri de instrucțiuni și va trebui să scriem noi codul pentru ele. Astfel, pentru a putea crea o variabila ''​latime'',​ scriem în Khan ''​var latime;''​. În Khan, nu mai avem blocuri de instrucțiuni și va trebui să scriem noi codul pentru ele. Astfel, pentru a putea crea o variabila ''​latime'',​ scriem în Khan ''​var latime;''​.
Linia 38: Linia 55:
 </​html>​ </​html>​
  
-Pentru a desena la distanta de 10 unități dreptunghiurile,​ va trebui să aduni la poziția pe orizontală, 10, latimea, adica 50.+Pentru a desena la distanta de 10 unități dreptunghiurile,​ va trebui să aduni la poziția pe orizontală,​ latimea, adica 50.
  
 <code javascript>​ <code javascript>​
-rect(90, 150, 50, 200); +rect(80, 150, 50, 200); 
-rect(150, 150, 50, 200); +rect(140, 150, 50, 200); 
-rect(210, 150, 50, 200); +rect(200, 150, 50, 200); 
-rect(270, 150, 50, 200);+rect(260, 150, 50, 200);
 </​code> ​ </​code> ​
  
Linia 59: Linia 76:
 </​code>​ </​code>​
  
-=== Exercițiu: Provocare variabile! === +==== 2. Animație în Khan ====
-Te descurci foarte bine! Ce-ar fi să câștigi niște insigne (în engleză, "​badge-uri"​) care să îți ateste cunoștințele?​ +
-Fă provocarea de la https://​www.khanacademy.org/​cs/​programming/​variables/​p/​challenge-bucktooth-bunny! +
-  * Folosește o variabilă pentru ochi și înlocuiește ultimele 2 valori din instrucțiunile pentru desenarea ochilor. +
-<code javascript>​ +
-var __ = __; +
-ellipse(170,​ 150, __, __); +
-ellipse(230,​ 150, __, __); +
-</​code>​ +
-  * Folosește o variabilă pentru lungimea dinților. +
-<code javascript>​ +
-var __ = __; +
-rect(185, 200, 15, __); +
-rect(200, 200, 15, __); +
-</​code>​ +
- +
-Cum ți se pare iepurele de aici? +
-<​html>​ +
-<​h2><​a href="​http://​www.khanacademy.org/​cs/​weird-bunny/​6124070950141952">​Weird Bunny</​a></​h2>​ <script src="​http://​www.khanacademy.org/​cs/​weird-bunny/​6124070950141952/​embed.js?​editor=yes&​amp;​buttons=yes&​amp;​author=yes&​amp;​embed=yes"></​script>​ <​p>​Made using: <a href="​http://​www.khanacademy.org/​cs">​Khan Academy Computer Science</​a>​.</​p>​  +
-</​html>​ +
- +
-=== 2. Animație în Khan ===+
  
 Urmărește programul de mai jos pentru a face mingea să se miște pe ecran. Schimbă culorea fundalului și a bilei, apoi scrie o instrucțiune pentru ca bila să se miște pe orizontală. Urmărește programul de mai jos pentru a face mingea să se miște pe ecran. Schimbă culorea fundalului și a bilei, apoi scrie o instrucțiune pentru ca bila să se miște pe orizontală.
Linia 90: Linia 86:
 Bravo! Ai făcut prima ta animație pe ziua de astăzi! 8-) Bravo! Ai făcut prima ta animație pe ziua de astăzi! 8-)
  
-=== 3. Condiție în Khan ===+==== 3. Condiție în Khan ====
  
 Adaugă o condiție pentru ca bila să se miște în sens invers când ajunge la marginea din dreapta. Adaugă următoarea structură: Adaugă o condiție pentru ca bila să se miște în sens invers când ajunge la marginea din dreapta. Adaugă următoarea structură:
Linia 103: Linia 99:
 </​code>​ </​code>​
  
-=== Exercițiu: Provocare pentru mișcarea bilei pe verticală === +===== Exerciții ===== 
-Fă provocarea de la https://​www.khanacademy.org/​cs/​programming/​logic-if-statements/​p/​challenge-bouncy-ball! Ai obținut vreo insignă ("​badge"​) ca recunoaștere a eforturilor tale?+ 
 +==== Exercițiul 1: Provocare variabile! ==== 
 +Te descurci foarte bine! Ce-ar fi să câștigi niște insigne (în engleză, "​badge-uri"​) care să îți ateste cunoștințele?​ 
 +Fă provocarea de la https://​www.khanacademy.org/​cs/​programming/​variables/​p/​challenge-bucktooth-bunny ! 
 +  * Folosește o variabilă pentru ochi și înlocuiește ultimele 2 valori din instrucțiunile pentru desenarea ochilor. 
 +<code javascript>​ 
 +var __ = __; 
 +ellipse(170,​ 150, __, __); 
 +ellipse(230,​ 150, __, __); 
 +</​code>​ 
 +  * Folosește o variabilă pentru lungimea dinților. 
 +<code javascript>​ 
 +var __ = __; 
 +rect(185, 200, 15, __); 
 +rect(200, 200, 15, __); 
 +</​code>​ 
 + 
 +Cum ți se pare iepurele de aici: http://​www.khanacademy.org/​cs/​weird-bunny/​6124070950141952?​ 
 + 
 +==== Exercițiul 2: Provocare pentru mișcarea bilei pe verticală ​==== 
 +Fă provocarea de la https://​www.khanacademy.org/​cs/​programming/​logic-if-statements/​p/​challenge-bouncy-ball ! Ai obținut vreo insignă ("​badge"​) ca recunoaștere a eforturilor tale?
  
 Bravo! :-) Bravo! :-)
 +
 +==== Bonus 1: Desenează forme! ====
 +
 +Creează un program nou, accesând link-ul https://​www.khanacademy.org/​cs/​new. Dă-i numele **Diverse Forme**. Urmează pașii de mai jos:
 +  - creează o variabilă numită ''​forma''​
 +  - dacă variabila ''​forma''​ este egală (în Khan, egal este ''​===''​) cu 1, atunci desenează un **cerc bleu**
 +  - dacă variabila ''​forma''​ este egală cu 2, desenează o **linie neagră**
 +  - dacă variabila ''​forma''​ este egală cu 3, deseanează un **triunghi galben**
 +  - dacă variabila ''​forma''​ este egală cu 4, desenează un **dreptunghi verde**
 +  - dacă variabila ''​formă''​ este egală cu 5, desenează un **pentagon gri**
 +
 +Schimbă valoarea variabilei ''​forma''​ și verifică corectitudinea programului tău!
  
 ==== Lucru pentru acasă ==== ==== Lucru pentru acasă ====
  
-  * Tutorial: condiții (if/else) și operatori +Scrie un program ​care conține o variabilă ''​operator''​, o variabilă ​''​a'' ​și o variabilă ''​b''​. În funcție de valoarea variabilei ''​operator'',​ putem face următoarele: 
-  * Task-uri într-un program ​predefinit/​schelet +  ​- adunăm ''​a''​ cu ''​b''​ și afișăm rezultatul 
-  * Bonus: program fără efect vizualde la zero +  - scădem ''​a''​ din ''​b''​ și afișăm rezultatul 
-      * o variabilă ​hardcoded ​și condiții în funcție de ea să deseneze diverse figuri +  - înmulțim ''​a''​ cu ''​b'' ​și afișăm rezultatul 
-  ​* Temă de casă: program de completat condiții și operatori+  - împărțim ''​a''​ la ''​b''​ și afișăm rezultatul 
 + 
module/07-bucle-in-programare/lectia-03.txt · Ultima modificare: 2016/02/27 19:59 de către andreea