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
module:07-bucle-in-programare:lectia-03 [2014/03/29 00:30]
teobaluta
module:07-bucle-in-programare:lectia-03 [2016/02/27 19:59] (curent)
andreea creat
Linia 1: Linia 1:
-====== Lecția 3: Condiții în Khan ======+===== Lecția 3: Recapitulare Scratch ​=====
  
-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.+====Partea I====
  
-<note warning>​La sfârșitul fiecărei instrucțiuni/​actiuni din Khan vei avea semnul ''​%%;​%%''​!</​note>​+Haideți să crem un mic program în Scratch în care pisicuța să ne întrebe ce anotipm este. Dacă noi introducem ca răspuns vara, atunci se va schimba backdrop-ul (background-ul) într-unul specific anotimpului vară. La fel se va întâmpla și pentru celelalte 3 anotimpuri.
  
-<note warning> Comentariile nu fac parte din cod, adică nu sunt interpretate de calculator! În Khan, comentariile sunt colorate cu verde. Comentariile pe o singură linie încep cu ''​%%//​%%''​. Dacă vrem să scriem comentarii pe mai multe linii, putem pune în fața fiecărei linii ''​%%//​%%''​ sau să folosim ''​%%/​*%%''​ pentru a deschide comentariul pe mai multe linii și ''​%%*/​%%''​ închide comentariul. Vezi mai jos un exemplu. </​note>​ 
  
-<​html>​ +Pentru fiecare anotimp afișați un mesaj specific, de exemplu puneți pisicuțsă spună ce îi place cel mai mult la fiecare anotimp.
-<​h2><​href="​http://​www.khanacademy.org/​cs/​comentarii-in-khan/​6558304760233984">​Comentarii in Khan</​a></​h2>​ <script src="​http://​www.khanacademy.org/​cs/​comentarii-in-khan/​6558304760233984/​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>​+
  
-===== Recapitulare =====+În cazul în care nu introducem unul din cele 4 anotimpuri: primavara, vara, toamna sau iarna, pisicuța ne va spune că anotimpul pe care noi l-am introdus nu există.
  
-<note warning>​Intră pe khanacademy.org cu contul personal ​și salvează-ți programele! </​note>​+Programul nostru va merge la infinit, adică pisicuța ne va întreba mereu ce anotimp este și se vor executa acțiunile explicate mai sus până când noi introducem ca răspuns cuvântul **exit**. Deci, programul nostru rulează până când am introduc cuvântul exit.
  
-Desenează o fată zâmbitoare (smiley) în Khan! +Haideți să ne gândim împreună la instrucțiunile de care avem nevoie ​pentru ​a scrie cât mai corect acest program. :-)
-  - Desenează două ovale pentru ochi cu instrucțiunea ''​ellipse(...)''​ și colorează-le cu ''​fill(...)''​ +
-  - Deseanză un pătrat sau oval pentru ​nasColorează-l! +
-  - Pentru zâmbet putem folosi 3 linii groasegrosimea seteaz-o cu ''​strokeWeight'',​ iar culoarea cu ''​stroke''​. +
-  - Încadrează totul într-un oval pentru conturul feței.+
  
-Dacă ai făcut asta, desenează o pălărie ​pentru ​personajul zâmbitor! :-)+Putem începe prin a ne reaminti ce este o **instrucțiune** și a răspunde la următoarele întrebări: 
 +  - Ce este istrucțiune?​ Dați câteva exemple. 
 +  - Ce este o condiție?​ 
 +  - Care este instrucțiunea folosită pentru ​o condiție? Câte cunoașteți?​ 
 +  ​Ce se întâmplă dacă o condiție nu este adevărată?​ Dar dacă este adevărată?​ 
 +  - Ce este un program? 
 +  - Ce este o variabilă?​ 
 +  - La ce folosim operatorii?​ 
 +  - Cum scriem operații compuse? Dați câteva exemple. 
 +  - Vă mai aduceți aminte de mesajele de broadcast? La ce erau folosite? 
 +  - Ce este o buclă? Ce instrucțiuni cunoașteți pentru a scrie o buclă?
  
-<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>​ +Acum haideți ​să decidem cam de ce instrucțiuni ​avem nevoie ​pentru a scrie programul nostru cu anotimpuri.
-===== Tutorial =====+
  
-=== 1. Variabile în Khan ===+====Partea II====
  
-În Khan, nu mai avem blocuri de instrucțiuni șva trebui ​să scriem noi codul pentru ele. Astfel, ​pentru a putea crea o variabila ''​latime'',​ scriem în Khan ''​var latime;''​.+Acum haideți să modificăm puțin programul ​pentru a-l face mai interesant=)
  
-Cu ce ne ajută variabilele?​ Ele rețin niște valori la un moment dat din program șpot face mai ușoară munca noastră.+După ce am spus în ce anotimp suntem, pisicuța ​ne întreabă în ce clasă suntem.  
 +  * Dacă răspunsul este între 1 și 4, pisicuța ne va întreba dacă ne place matematica.  
 +    * Dacă noi răspundem cu **da** atunci ne va pune o întrebare de matematică.  
 +      * Dacă dăm răspunsul corect pisicuța ne va felicita după care va începe să danseze (adică îi vom schimba costumul ​și poziția de 10 ori). 
 +      * Altfel, va pune un sunet trist.  
 +    * Dacă spunem că **nu** ne place matematica, pisicuța ne va spune de ce ar trebui să o învățăm (aici voi trebuie să spunețla ce credeți că este utilă matematica).
  
-Desenează 6 dreptunghiuri la distanță de 10 unități. Ai deja desenat primul și ultimulmai ai de desenat 4. Acțiunea de desenare ​dreptunghiului ​este ''​rect(pozitia pe orizontala, pozitia pe verticala, latime, lungime)''​.+  * Dacă răspunsul este mai mare sau egal cu 5atunci pisicuța va spune care este materia voastră preferată.
  
-<​html>​ +Se mai oprește acum programul dacă introducem **exit**? De ce? Cum putem rezolva?
-<​h2><​a href="​http://​www.khanacademy.org/​cs/​dreptunghiuri-cu-variabile/​4801408659357696">​Dreptunghiuri cu variabile</​a></​h2>​ <script src="​http://​www.khanacademy.org/​cs/​dreptunghiuri-cu-variabile/​4801408659357696/​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>​+
  
-Pentru a desena la distanta de 10 unități dreptunghiurile,​ va trebui să aduni la poziția pe orizontală,​ 10, latimea, adica 50. 
- 
-<code javascript>​ 
-rect(90, 150, 50, 200); 
-rect(150, 150, 50, 200); 
-rect(210, 150, 50, 200); 
-rect(270, 150, 50, 200); 
-</​code> ​ 
- 
-Adaugă după instrucțiunea ''​background(...);''​ următoarea linie: 
- 
-<code javascript>​ 
-var x = 20; 
-</​code>​ 
- 
-Rescrie instrucțiunile de mai sus astfel încât să faci adunarea în Khan: 
-<code javascript>​ 
-x = x + 60; 
-rect(x, 150, 50, 200); 
-</​code>​ 
- 
-=== Exercițiu: 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? 
-<​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ă. 
- 
-<​html>​ 
-<​h2><​a href="​http://​www.khanacademy.org/​cs/​animatie-bila/​5548090015612928">​Animatie Bila</​a></​h2>​ <script src="​http://​www.khanacademy.org/​cs/​animatie-bila/​5548090015612928/​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>​ 
- 
-Bravo! Ai făcut prima ta animație pe ziua de astăzi! 8-) 
- 
-=== 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ă: 
-<code javascript>​ 
-    if (x > 400) { 
-        speed = -5; 
-    } 
-    ​ 
-    if (x < 0) { 
-        speed = 5; 
-    } 
-</​code>​ 
- 
-=== Exercițiu: 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! :-) 
- 
-==== Lucru pentru acasă ==== 
- 
-  * Tutorial: condiții (if/else) și operatori 
-  * Task-uri într-un program predefinit/​schelet 
-  * Bonus: program fără efect vizual, de la zero 
-      * o variabilă hardcoded și condiții în funcție de ea să deseneze diverse figuri 
-  * Temă de casă: program de completat condiții și operatori 
module/07-bucle-in-programare/lectia-03.1396045847.txt.gz · Ultima modificare: 2014/03/29 00:30 de către teobaluta