start     Articole     Despre mine     Contact     Cursul ABCprog    

Bazele programarii in Python

fundamentele programarii calculatoarelor in limbajul Python

Programarea calculatoarelor e un domeniu amplu, cu multe ramuri si sub-ramuri. Poate parea o adevarata jungla pentru cei ce se incumeta sa se apropie de ea ca sa-i descopere tainele. Vestea buna e ca exista o ordine in haosul de informatii care ii intampina pe curajosii ce pornesc la acest drum.

»… Vreau sa aflu tot.»


Bazele programarii in Java

bazele programarii calculatoarelor in limbajul Java

La baza programarii stau 7 “piloni” pe care daca ii intelegi bine vei putea invata cu usurinta orice limbaj de programare. Fie ca vorbim de JavaScript, de C, de C++, de Java sau de Python, pilonii de baza ai programarii sunt aceiasi.

»… Vreau sa aflu tot.»


Cum programezi structurile de date fundamentale in C

Programarea nu exista fara date. Cu toate ca instructiunile sunt cele care sar in ochi atunci cand te gandesti la un program de calculator, datele sunt esenta.

Datele sunt “sufletul” programului. Restul programului, algoritmul, e doar o secventa de »… Vreau sa aflu tot.»



Cum citesti si cum scrii fisiere folosind limbajul C

Toate informatiile stocate in calculatorul tau se gasesc acolo (pe hard-disk, mai exact) sub forma de fisiere. Poze, texte, documente, filme, tabele — toate sunt salvate (sub forma de biti (grupati in octeti)) in fisiere.

(Iar fisierele sunt organizate intr-o structura »… Vreau sa aflu tot.»



Cum grupezi variabilele in structuri C

programare in C cu structDespre variabile am tot vorbit. Stii deja ca ele sunt niste entitati ce au un tip si stocheaza in ele o valoare (de acel tip) intr-o locatie de memorie caracterizata de o adresa si de o dimensiune (ce se “masoara” in numar de octeti si depinde de tipul variabilei; practic, daca tipul e T, aceasta dimensiune se obtine cu sizeof(T)).

Si ai vazut si cum te »… Vreau sa aflu tot.»



Cum aloci memoria dinamic in C (si de ce nu poti folosi intotdeauna alocarea statica)

Aparent, programarea e compusa din doua etape:
1) te gandesti ce variabile iti trebuie
2) si apoi te gandesti ce operatii faci cu ele ca sa faci treaba.

Dar daca nu stii de la inceput ce sau cate variabile iti sunt necesare?…

Evident, o idee ar fi sa iti rezervi spatiu (de memorie) acoperitor. Dar asta ar duce la situatia total nepractica in care un programel mititel »… Vreau sa aflu tot.»



Cum desenezi tabla de sah prin programare

Exercitiul din mini-ghidul meu de introducere in programare care a dat nastere la cele mai multe intrebari este cel in care ti se cere sa “desenezi” o tabla de sah (de 10×10 patratele).

Despre lectia asta vorbesc.

Am observat ca a provocat »… Vreau sa aflu tot.»



Cum programezi cu siruri de caractere in limbajul C

Calculatorul a fost conceput initial ca sa permita efectuarea automata de calcule. Si chiar asta face el in realitate. Face operatii cu numere. (Caci da — textele, imaginile, sunetele sunt toate stocate in calculator ca niste numere.

Doar ca omului ii este dificil sa opereze cu numere. Omul e, in schimb, obisnuit sa vorbeasca si sa asculte. Si, ceva mai tarziu la scara istoriei, s-a obisnuit sa scrie si sa citeasca.

Asa s-a ajuns ca astazi »… Vreau sa aflu tot.»



Ce sunt functiile in C, ce parametri pot primi si care e diferenta dintre variabilele locale si cele globale

Junior programmer, software architect, project manager… Daca esti programator in C si ai una din functiile astea, am putea spune ca ai o… functie in C, nu-i asa? 🙂

Bineinteles ca nu despre astfel de functii vom vorbi aici — ci despre functii ca acelea despre care »… Vreau sa aflu tot.»



Ce sunt pointerii din limbajul C si care e legatura lor cu vectorii

Ai vazut in lectia trecuta ca vectorii ne ofera posibilitatea sa lucram cu variabile generice. Nu e nevoie, adica, sa stim numele variabilei, ci doar indexul ei in vector (adica distanta (exprimata in numar de elemente) de la primul element din vector pana la ea).

Altfel spus, e ca si cum un vector ar fi un bloc de apartamente »… Vreau sa aflu tot.»