Tema și descrierea proiectului
Tema: „Aplicație Python care sortează și analizează date reale (note, punctaje, temperaturi) cu toate cele 3 metode de sortare și generare de rapoarte".
Aplicația primește o listă de date reale (de la tastatură sau generate automat), le analizează și le sortează, apoi afișează rapoarte: lista ordonată, media, minimul, maximul, valoarea cea mai frecventă și numărul de comparații făcut de fiecare metodă.
De ce acest proiect?
Este ca o mini-aplicație de birou: profesorul introduce notele clasei, iar programul produce imediat clasamentul, media și statisticile. Fiecare tehnică din modul își găsește locul într-o aplicație reală, utilizabilă.
Note, punctaje sau temperaturi, citite sau generate
Cele 3 metode, comparate după numărul de operații
Liste ordonate, statistici, frecvențe
Cerințe pe niveluri de notă
| Nivel | Cerințe obligatorii | Ce arată elevul |
|---|---|---|
| Nota 5-6 | O metodă de sortare funcțională (selecția minimului sau bulele) aplicată unei liste de note sau punctaje; afișarea listei sortate crescător; citirea datelor de la tastatură. | Un program corect care citește, sortează și afișează. |
| Nota 7-8 | Două metode de sortare (selecția minimului și bulele, sau selecția și lista de frecvențe) pe aceeași listă; afișarea numărului de comparații pentru fiecare metodă; raport cu media, minimul și maximul. | Compară metodele pe aceleași date și produce un raport statistic. |
| Nota 9-10 | Toate cele 3 metode de sortare (selecția minimului, metoda bulelor, lista de frecvențe); compararea eficienței cu numărul real de operații; modularizare (funcții pentru fiecare metodă și pentru rapoarte); interfață de tip meniu cu cel puțin 5 opțiuni; gestionarea erorilor la citire. | O aplicație completă, curată, modulară, cu meniu și rapoarte comparative. |
Reține: nivelul ales trebuie să fie complet funcțional. O cerință de nivel superior pe jumătate rezolvată nu compensează lipsa cerințelor de bază.
Secțiune anti-AI
Susținerea orală obligatorie
Nota se acordă DOAR în urma susținerii orale în fața profesorului, unde elevul explică codul linie cu linie.
- Elevul va explica, pe rând, fiecare bloc de cod: ce face, de ce este scris astfel și ce se întâmplă la fiecare pas.
- Profesorul poate cere modificări simple pe loc: „sortează descrescător", „adaugă și media", „schimbă comparația" - elevul trebuie să le facă în fața profesorului.
- Codul generat automat (chat sau asistenți AI) care nu poate fi explicat de elev atrage punctaj zero pentru componenta de cod, indiferent de corectitudinea lui.
- Predarea se face cu dosarul de proiect deschis și programul rulat pe calculatorul școlii, nu prin mesaje sau e-mail.
Criterii de evaluare
| Criteriu | Pondere | Detalii |
|---|---|---|
| Corectitudinea programelor | 30% | Programele rulează fără erori și produc rezultatele așteptate pe exemple date de profesor |
| Completitudinea cerințelor nivelului ales | 25% | Toate cerințele nivelului sunt implementate și funcționale |
| Claritatea și structura codului | 15% | Nume sugestive, funcții modulare, fără cod repetat, comentarii pe pași logici |
| Susținerea orală | 20% | Explicarea linie cu linie, răspunsuri la întrebări, modificări făcute pe loc |
| Termen și prezentare | 10% | Respectarea termenului de predare și prezentarea dosarului |
Termen și condiții de predare
Termenul de predare: ultima săptămână a modulului (Săptămâna 8), în ziua stabilită de profesor.
- Proiectul se predă în ziua stabilită, prin susținere orală la calculator, în cadrul orei de informatică.
- Depășirea termenului fără anunțare prealabilă scade punctajul la criteriul „Termen și prezentare".
- Programul trebuie să ruleze în Python 3, fără biblioteci externe, pe calculatorul școlii.
- Dosarul de proiect conține: specificația, codul sursă, exemple de rulare și concluzii despre metoda cea mai eficientă.
Sfat: începe cu nivelul Nota 5-6 și adaugă treptat cerințe. Un proiect simplu, complet și bine explicat valorează mai mult decât unul complex, neterminat.
Pași de lucru recomandați
Pentru a lucra ordonat și a nu rata cerințe, parcurge pașii în această ordine:
- Planifică pe hârtie: scrie ce date primește programul, ce calculează și ce afișează.
- Începe cu nivelul Nota 5-6: citește datele, sortează cu o metodă și afișează lista ordonată.
- Adaugă treptat: a doua metodă de sortare, numărul de comparații, media, minimul și maximul.
- Modularizează: o funcție pentru fiecare metodă de sortare și una pentru rapoarte (nivel Nota 9-10).
- Testează complet: pe exemplul din cerință, pe cazuri limită (n = 1, valori egale) și pe date generate.
- Pregătește susținerea: notează ce face fiecare bloc de cod, ca să poți explica linie cu linie.