Școala Româno-Britanică Clasa a IX-a | Python
MODULUL 1

Introducere în programare și elaborarea algoritmilor

Învață ce este un algoritm, cum se elaborează un program pas cu pas, cum se reprezintă algoritmii și cum folosim Python pentru primele programe: variabile, decizii și bucle.

14 ore de învățare
Competențe 1.3, 2.3, 3.3, 3.4
Limbaj: Python
30+ exerciții practice
ORA 1

Ce este informatica? Programe și aplicații

Informatica, domeniile ei, programe și aplicații, primul program Python

Competența 1.3
Săptămâna 1

Ce vei învăța:

  • Ce este informatica și ce facem cu ea
  • Domenii: jocuri, aplicații, analiza datelor
  • Ce sunt programele și aplicațiile
  • Primul program Python care afișează un mesaj
ORA 2

Instalarea Python și primul program - Hello World

Instalarea de pe python.org, IDLE, interpretorul, Hello World și variabile

Competența 1.4
Săptămâna 1

Ce vei învăța:

  • Instalarea Python pas cu pas
  • Cum funcționează IDLE și interpretorul
  • Primul program: Hello World
  • Print cu variabile simple
ORA 3

Gândirea computațională și algoritmii

Ce este un algoritm, datele de intrare, ieșire și manevră

Competența 1.3
Săptămâna 2

Ce vei învăța:

  • Ce este gândirea computațională
  • Definiția și proprietățile unui algoritm
  • Date de intrare, date de ieșire, date de manevră
  • Exemple de algoritmi din viața de zi cu zi
ORA 4

Etapele elaborării unui program

Analiză, proiectare, implementare, testare și depanare

Competența 2.3
Săptămâna 2

Ce vei învăța:

  • Cele cinci etape ale elaborării unui program
  • Rolul fiecărei etape
  • Testarea și depanarea programelor
  • Aplicarea etapelor pe un exemplu concret
ORA 5

Reprezentarea algoritmilor

Pseudocod, blocuri grafice, limbaje de programare

Competența 2.3
Săptămâna 3

Ce vei învăța:

  • Pseudocodul ca formă de reprezentare
  • Blocuri grafice (organigrame)
  • Limbaje de nivel înalt și de nivel scăzut
  • Compilator și interpretor
ORA 6

Elemente de bază în Python

Variabile, tipuri de date, operatori, citire și afișare

Competența 3.4
Săptămâna 3

Ce vei învăța:

  • Declararea variabilelor în Python
  • Tipuri de date: int, float, str, bool
  • Operatorii aritmetici și de comparație
  • Citirea cu input() și afișarea cu print()
ORA 7

Structuri de decizie în Python

Instrucțiunea if, elif, else

Competența 3.4
Săptămâna 4

Ce vei învăța:

  • Structura if / elif / else
  • Condiții simple și compuse
  • Operatorii de comparație și logici
  • Decizii în probleme practice
ORA 8

Structuri repetitive în Python

Buclele for și while

Competența 3.4
Săptămâna 4

Ce vei învăța:

  • Bucla for cu range()
  • Bucla while și condițiile de oprire
  • Sume și numărători
  • Diferențele dintre for și while
ORA 9

Proiectarea modulară și tratarea erorilor

Descompunerea în subprobleme, tipuri de erori

Competențele 3.3, 4.3
Săptămâna 5

Ce vei învăța:

  • Descompunerea unei probleme în module
  • Erori de sintaxă, de logică, de executare
  • Tratarea erorilor cu try/except
  • Integrarea modulelor într-o soluție unitară
ORA 10

Eficiența algoritmilor și notația O

Notația O, timp de executare și spațiu de memorie

Competența 5.3
Săptămâna 5

Ce vei învăța:

  • Timp de executare și spațiu de memorie
  • Notația O: O(1), O(log n), O(n), O(n^2)
  • Compararea algoritmilor prin numărul de operații
  • Alegerea variantei eficiente pentru o problemă
ORA 11

Medii integrate de dezvoltare și executarea programelor Python

IDE (IDLE, Thonny), scrierea și rularea programelor, interpretor vs compilator

Competența 2.3
Săptămâna 6

Ce vei învăța:

  • Ce este un mediu integrat de dezvoltare
  • Scrierea și rularea unui program
  • IDLE și Thonny: medii pentru începători
  • Interpretor vs compilator
ORA 12

Pseudocod, organigramă și Python - elemente de corespondență

Cum corespund citește/scrie/dacă/pentru cu Python, tabel de corespondență

Competența 2.3
Săptămâna 6

Ce vei învăța:

  • Corespondența citește → input()
  • Corespondența scrie → print()
  • Corespondența dacă → if, pentru → for
  • Transformarea unui algoritm din pseudocod în Python
ORA 13

Criterii de elaborare a testelor și urmărirea evoluției variabilelor

Testarea programelor, date valide/invalide/limită, tabelul de urmărire

Competența 5.3
Săptămâna 7

Ce vei învăța:

  • Date de test valide, invalide și cazuri limită
  • Tabelul de urmărire a variabilelor
  • Găsirea erorilor de logică
  • Testarea programelor pas cu pas
ORA 14

Recapitulare și evaluare

Recapitularea modulului, tabel rezumativ, problema completă de evaluare

Competența 6.3
Săptămâna 7

Ce vei învăța:

  • Recapitularea tuturor lecțiilor modulului
  • Tabel rezumativ al structurilor
  • Problema completă de evaluare
  • Autoevaluare și plan de îmbunătățire

Resursele modulului

Competențe dobândite

Competența 1.3

Identificarea caracteristicilor strategiilor de rezolvare prin proiectarea modulară

  • Identificarea datelor de intrare, ieșire și manevră
  • Conceperea de diagrame pentru etapele unui program
  • Enumerarea etapelor de elaborare a unui program
  • Asocierea termenilor modul, gândire computațională, proiectare

Competența 2.3

Explicarea etapelor strategiilor de rezolvare prin proiectarea modulară

  • Compararea a două strategii de rezolvare a aceleiași probleme
  • Explicarea rolului fiecărei etape din dezvoltarea unui program
  • Explicarea rolului fiecărui modul într-o aplicație
  • Argumentarea impactului organizării modulelor

Competența 3.3

Aplicarea strategiilor de rezolvare prin proiectarea modulară

  • Descompunerea unei probleme în subprobleme
  • Atribuirea câte unui modul fiecărui membru al unei echipe
  • Aplicarea analizei, proiectării și testării în fiecare modul
  • Integrarea modulelor într-o soluție unitară

Competența 3.4

Utilizarea elementelor de limbaj pentru transmiterea datelor

  • Scrierea primelor programe Python
  • Utilizarea variabilelor și a operatorilor
  • Construirea de decizii și bucle
  • Rezolvarea de probleme simple în Python

Competența 4.3

Analiza avantajelor și dezavantajelor proiectării modulare

  • Încadrarea erorilor în categorii: sintaxă, logică, executare
  • Analiza contribuției fiecărui modul la o aplicație
  • Evaluarea avantajelor și dezavantajelor modulelor
  • Analiza interacțiunii modulelor unei aplicații