🎯 Obiectiv:

Să aplici noțiunile de bază în programare prin proiecte practice, ușor de înțeles, utile în viața de zi cu zi și ușor de extins pe măsură ce înveți mai mult.

Noțiuni exersate: input, print, variabile, tipuri de date, condiții if, expresii matematice, bucle simple și validări.


💡 Proiect 1: Joc de ghicit numărul

Descriere:
Calculatorul alege un număr aleatoriu între 1 și 10. Utilizatorul trebuie să-l ghicească.

Cod de bază:

pythonCopyEditimport random

numar_secret = random.randint(1, 10)
incercare = int(input("Ghicește un număr între 1 și 10: "))

if incercare == numar_secret:
    print("Bravo! Ai ghicit!")
else:
    print("Nu ai nimerit. Numărul era:", numar_secret)

Extensii posibile:

  • Adaugă un while pentru a permite mai multe încercări.
  • Numără câte încercări i-au trebuit utilizatorului.
  • Afișează mesaje precum „Prea mare” sau „Prea mic”.

💸 Proiect 2: Calculator de buget lunar

Descriere:
Adună cheltuielile și le scade din venit pentru a calcula economiile lunare.

Cod de bază:

pythonCopyEditvenit = float(input("Venitul lunar: "))
chirii = float(input("Chirie/utilități: "))
alimente = float(input("Cheltuieli alimentare: "))
diverse = float(input("Altele: "))

total_cheltuieli = chirii + alimente + diverse
economii = venit - total_cheltuieli

print("Ai economisit:", economii, "lei.")

if economii < 0:
    print("Ai cheltuit mai mult decât câștigi!")

Extensii posibile:

  • Afișează procentele cheltuielilor (ex: „Chiria reprezintă 40% din venit”).
  • Permite introducerea cheltuielilor ca listă (cu buclă for).
  • Salvează datele într-un fișier text (folosind open()).

🕒 Proiect 3: Planificator zilnic

Descriere:
Sugerează activități în funcție de ora introdusă.

Cod de bază:

pythonCopyEditora = int(input("Ce oră este (0-23)? "))

if ora < 6:
    print("E cam devreme... Somn?")
elif ora < 9:
    print("Poate te pregătești pentru zi?")
elif ora < 13:
    print("Bună dimineața! Poate e timp de învățat.")
elif ora < 18:
    print("E după-amiază. Ai o activitate planificată?")
else:
    print("E seară. Relaxează-te sau citește ceva.")

Extensii posibile:

  • În funcție de ziua săptămânii (input), oferă sugestii diferite pentru weekend.
  • Creează un meniu cu activități selectabile.
  • Afișează ora curentă automat folosind datetime.

💱 Proiect 4: Convertor valutar simplu

Descriere:
Transformă o sumă din RON în euro, folosind un curs prestabilit.

Cod de bază:

pythonCopyEditcurs_eur = 4.95
suma_ron = float(input("Introdu suma în RON: "))
suma_eur = suma_ron / curs_eur

print("Suma în euro este:", round(suma_eur, 2), "EUR")

Extensii posibile:

  • Permite conversia și în USD, GBP etc., printr-un meniu.
  • Actualizează cursul valutar de la utilizator.
  • Afișează suma și înapoi din euro în RON.

🔐 Proiect 5: Verificator de parolă

Descriere:
Verifică dacă o parolă respectă regulile de bază de siguranță.

Cod de bază:

pythonCopyEditparola = input("Introdu o parolă: ")

if len(parola) < 6:
    print("Parola e prea scurtă!")
elif " " in parola:
    print("Parola nu poate conține spații.")
else:
    print("Parolă validă!")

Extensii posibile:

  • Verifică dacă parola conține cifre, litere mari și caractere speciale.
  • Afișează un scor de siguranță („Slabă”, „Medie”, „Puternică”).
  • Ascunde parola la introducere (folosind getpass).

➕ Proiect 6: Mini-calculator

Descriere:
Permite efectuarea unei operații între două numere.

Cod de bază:

pythonCopyEdita = float(input("Primul număr: "))
b = float(input("Al doilea număr: "))
operatie = input("Alege operația (+, -, *, /): ")

if operatie == "+":
    print("Rezultatul este:", a + b)
elif operatie == "-":
    print("Rezultatul este:", a - b)
elif operatie == "*":
    print("Rezultatul este:", a * b)
elif operatie == "/":
    if b != 0:
        print("Rezultatul este:", a / b)
    else:
        print("Eroare: împărțire la 0!")
else:
    print("Operatie necunoscută.")

Extensii posibile:

  • Permite operații multiple într-un singur program (folosind while).
  • Adaugă operații de putere (**) și restul împărțirii (%).
  • Salvează istoricul calculului într-un fișier.

🔁 Proiect Bonus: Verificator vârstă

Exercițiu pentru autoevaluare:
Scrie un program care:

  1. Cere un nume
  2. Cere o vârstă
  3. Afișează „Minor” dacă vârsta < 18, altfel „Major”
pythonCopyEditnume = input("Cum te cheamă? ")
varsta = int(input("Ce vârstă ai? "))

if varsta < 18:
    print(nume + ", ești minor.")
else:
    print(nume + ", ești major.")

Extensii posibile:

  • Afișează câți ani mai sunt până la majorat (dacă este minor).
  • Afișează un mesaj personalizat în funcție de nume și vârstă.

🧠 Recapitulare Lecția opțională 4

🔹 Ai învățat să creezi programe simple folosind:

  • input() / print() – pentru a interacționa cu utilizatorul
  • ✅ tipuri de date (int, float, str)
  • ✅ expresii matematice și condiții if, elif, else
  • ✅ validări simple (lungime, caractere interzise)
  • ✅ rotunjirea numerelor și importarea de module (random, round())

🔹 Fiecare proiect este:

  • Testabil – poți rula codul și vedea ce se întâmplă
  • Extensibil – poți adăuga funcționalități noi
  • Combinabil – poți crea aplicații mai complexe din mai multe proiecte mici

✅ Autoevaluare:

  1. Care proiect ți s-a părut cel mai util? De ce?
  2. Cum ai îmbunătăți unul dintre proiecte (ex: adăugarea unei bucle, validări suplimentare, salvarea datelor)?
  3. Scrie un program propriu care cere un nume, cere o vârstă și afișează „Minor” sau „Major”.

📌 Recomandare pentru pasul următor:
Încearcă să combini proiectele: de exemplu, fă un planificator zilnic care te avertizează și dacă ai cheltuieli prea mari sau o parolă prea slabă. Așa înveți cum se construiesc aplicații reale din bucăți mici.

📚 1. Cărți recomandate

  • „Automate the Boring Stuff with Python” – Al Sweigart
    ➤ Conține proiecte simple și practice, explicate pas cu pas. Este ideală pentru începători.
    📖 https://automatetheboringstuff.com
  • „Python Crash Course” – Eric Matthes
    ➤ Include lecții despre input, condiții, variabile, debugging și mai multe proiecte aplicate.
  • „Learn Python the Hard Way” – Zed A. Shaw
    ➤ Lecții concise care implică multă practică și exerciții.

🌐 2. Cursuri și platforme online


🎥 3. Canale YouTube utile


🛠️ 4. Editor și testare de cod online


📝 5. Documentația oficială Python

Lasă un comentariu

Quote of the week

„And so with the sunshine and the great bursts of leaves growing on the trees, I had that familiar conviction that life was beginning over again with the summer.”

~ F. Scott Fitzgerald, The Great Gatsby