Differences

This shows you the differences between two versions of the page.

Link to this comparison view

poo-is-ab:laboratoare:01 [2025/09/24 23:14]
razvan.cristea0106 [Concluzii]
poo-is-ab:laboratoare:01 [2025/10/01 12:20] (current)
razvan.cristea0106 [GIT și GitHub]
Line 9: Line 9:
   * recunoască asemănările dintre limbajele C și C++   * recunoască asemănările dintre limbajele C și C++
   * scrie un program simplu în limbajul C++   * scrie un program simplu în limbajul C++
-  * creeze un repository pe GitHub 
   * utilizeze comenzi elementare de git în terminal   * utilizeze comenzi elementare de git în terminal
 +  * creeze un repository pe contul personal de GitHub
  
 ==== Introducere ==== ==== Introducere ====
Line 33: Line 33:
 int main() int main()
 { {
- int x = 3; // variabila de tip intreg +    ​int x = 3; // variabila de tip intreg 
- float nr = 3.5f; // variabila de tip float +    float nr = 3.5f; // variabila de tip float 
- double y = 10.6; // variabila de tip double +    double y = 10.6; // variabila de tip double 
- char c = '​q';​ // variabila de tip caracter +    char c = '​q';​ // variabila de tip caracter 
- long w = 1000000000; // variabila de tip long+    long w = 1000000000; // variabila de tip long
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 50: Line 50:
 int main() int main()
 { {
- int a = 8; +    ​int a = 8; 
- int b = 5;+    int b = 5;
  
- int suma = a + b; +    ​int suma = a + b; 
- int produs = a * b; +    int produs = a * b; 
- int diferenta = a - b;+    int diferenta = a - b;
  
- float impartire = (float) a / b; // va avea valoarea 1.6 +    ​float impartire = (float)a / b; // va avea valoarea 1.6 
- int rest = a % b; // calculam restul impartirii lui a la b+    int rest = a % b; // calculam restul impartirii lui a la b
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 75: Line 75:
  
 <code cpp> <code cpp>
-if (conditie1) ​+if (conditie1)
 { {
- // bloc de cod+    ​// bloc de cod
 } }
 else if (conditie2) else if (conditie2)
 { {
-        ​// bloc de cod+    ​// bloc de cod
 } }
 else if (conditie3) else if (conditie3)
 { {
-        ​// bloc de cod+    ​// bloc de cod
 } }
 ... ...
 else else
 { {
-        ​// bloc de cod+    ​// bloc de cod
 } }
 </​code>​ </​code>​
Line 99: Line 99:
 int main() int main()
 { {
- int x = 13; +    ​int x = 13; 
- int estePar = -1; // variabila care are valoarea 0 daca numarul este impar si 1 daca este par+    int estePar = -1; // variabila care are valoarea 0 daca numarul este impar si 1 daca este par
  
- if (x % 2 == 0) +    ​if (x % 2 == 0) 
-+    
- estePar = 1; +        estePar = 1; 
-+    
- else  +    else 
-+    
- estePar = 0; +        estePar = 0; 
- }+    }
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 139: Line 139:
 int main() int main()
 { {
- int n = 4;+    ​int n = 4;
  
- switch (n) +    ​switch (n) 
-+    
- case 0: +    case 0: 
- n++; +        n++; 
- break;+        break;
  
- case 1: +    ​case 1: 
- n = n * 5 + 1; +        n = n * 5 + 1; 
- break;+        break;
  
- case 2: +    ​case 2: 
- n--; +        n--; 
- break;+        break;
  
- case 3: +    ​case 3: 
- n *= 5; +        n *= 5; 
- break;+        break;
  
- case 4: +    ​case 4: 
- n = n - 2 + n++ + n * 2; +        n = n - 2 + n++ + n * 2; 
- break;+        break;
  
- default: +    ​default: 
- n = 0; +        n = 0; 
- break; +        break; 
- }+    }
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 181: Line 181:
 for (start; conditie de continuare; pas) for (start; conditie de continuare; pas)
 { {
- // bloc de cod care se execută+    ​// bloc de cod care se execută
 } }
 </​code>​ </​code>​
Line 190: Line 190:
 int main() int main()
 { {
- int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; +    ​int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; 
- int nrElemente = 8;+    int nrElemente = 8;
  
- for (int index = 0; index < nrElemente; index++) +    ​for (int index = 0; index < nrElemente; index++) 
-+    
- vector[index] += 5; // echivalent cu a scrie vector[index] = vector[index] + 5; +        vector[index] += 5; // echivalent cu a scrie vector[index] = vector[index] + 5; 
- }+    }
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 211: Line 211:
 while (expresie) while (expresie)
 { {
- // bloc de cod care se execută+    ​// bloc de cod care se execută
 } }
 </​code>​ </​code>​
Line 220: Line 220:
 int main() int main()
 { {
- int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; +    ​int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; 
- int nrElemente = 8;+    int nrElemente = 8;
  
- int index = 0;+    ​int index = 0;
  
- while (index != nrElemente) +    ​while (index != nrElemente) 
-+    
- vector[index] += 5; +        vector[index] += 5; 
- index++; +        index++; 
- }+    }
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 251: Line 251:
 int main() int main()
 { {
- int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; +    ​int vector[10] = { 2, 4, 1, -4, 8, 10, 3, -5 }; 
- int nrElemente = 8;+    int nrElemente = 8;
  
- int index = 0;+    ​int index = 0;
  
- do +    ​do 
-+    
- vector[index] += 5; +        vector[index] += 5; 
- index++; +        index++; 
- } while (index != nrElemente);​+    } while (index != nrElemente);​
  
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 277: Line 277:
 int main() int main()
 { {
- int x = 8;+    ​int x = 8;
  
- for ( ; ; ) +    ​for (; ; ) 
-+    
- x = x * 10; +        x = x * 10; 
- }+    }
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 299: Line 299:
 int main() int main()
 { {
- int x = 10; +    ​int x = 10; 
- int* ptr = &x;+    int* ptr = &x;
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 317: Line 317:
 int main() int main()
 { {
- int x = 10; +    ​int x = 10; 
- int y = 2;+    int y = 2;
  
- int* ptr = &x, & y; // eroare de compilare un pointer nu poate arata catre 2 adrese simultan+    ​int* ptr = &x, & y; // eroare de compilare un pointer nu poate arata catre 2 adrese simultan
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 352: Line 352:
 int main() int main()
 { {
- int x = 10; +    ​int x = 10; 
- int* ptr = &x; // declararea unei variabile de tip pointer la int si initializarea acesteia cu adresa lui x+    int* ptr = &x; // declararea unei variabile de tip pointer la int si initializarea acesteia cu adresa lui x 
 +    int y = *ptr; // dereferentierea pointerului ptr si stocarea valorii in variabila y (echivalent cu a scrie direct int y = x;)
  
- int y = *ptr; // dereferentierea pointerului ptr si stocarea valorii in variabila y (echivalent cu a scrie direct int y = x;) +    ​return 0;
- +
- return 0;+
 } }
 </​code>​ </​code>​
Line 368: Line 367:
 int main() int main()
 { {
- int x = 10; +    ​int x = 10; 
- int* ptr = &x;+    int* ptr = &x;
  
- *ptr = 4; +    ​*ptr = 4; 
- x -= 2; +    x -= 2; 
- *ptr *= 2; +    *ptr *= 2; 
- *ptr += 10;+    *ptr += 10;
  
-        ​// care este valoarea lui x dupa ce s-au executat toate liniile de mai sus+    ​// care este valoarea lui x dupa ce s-au executat toate liniile de mai sus
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 387: Line 386:
 int main() int main()
 { {
- int* ptr = NULL; +    ​int* ptr = NULL; 
- +    return 0;
- return 0;+
 } }
 </​code>​ </​code>​
Line 469: Line 467:
  
     int dif = diferenta(x,​ y);     int dif = diferenta(x,​ y);
- 
     return 0;     return 0;
 } }
Line 492: Line 489:
  
     interschimbare(x,​ y); // interschimbarea se realizeaza doar la nivelul functiei (x = 5, y = 21)     interschimbare(x,​ y); // interschimbarea se realizeaza doar la nivelul functiei (x = 5, y = 21)
- 
     return 0;     return 0;
 } }
Line 526: Line 522:
  
     interschimbare(&​x,​ &y); // modificarile se vor rasfrange asupra lui x si y (x = 21, y = 5)     interschimbare(&​x,​ &y); // modificarile se vor rasfrange asupra lui x si y (x = 21, y = 5)
- 
     return 0;     return 0;
 } }
Line 540: Line 535:
 void afisareVector(int* v, int* n) void afisareVector(int* v, int* n)
 { {
- for (int index = 0; index < *n; index++) +    ​for (int index = 0; index < *n; index++) 
-+    
- std::cout << v[index] << " "; +        std::cout << v[index] << " "; 
- }+    }
 } }
  
 int main() int main()
 { {
- int nrElemente = 10; +    ​int nrElemente = 10; 
- int vec[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };+    int vec[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
  
- afisareVector(vec,​ &​nrElemente);​ // sau un apel echivalent afisareVector(&​vec[0],​ &​nrElemente);​ +    ​afisareVector(vec,​ &​nrElemente);​ // sau un apel echivalent afisareVector(&​vec[0],​ &​nrElemente);​ 
- +    return 0;
- return 0;+
 } }
 </​code>​ </​code>​
Line 570: Line 564:
 void func() void func()
 { {
- // bloc de cod+    ​// bloc de cod
 } }
  
 int main() int main()
 { {
- std::cout << func << '​\n';​ +    ​std::cout << func << '​\n';​ 
- +    return 0;
- return 0;+
 } }
 </​code>​ </​code>​
Line 592: Line 585:
 void func() void func()
 { {
- // bloc de cod+    ​// bloc de cod
 } }
  
 int main() int main()
 { {
- void (*functionPtr)() = func; // declararea si initializarea unui function pointer cu adresa functiei func+    ​void (*functionPtr)() = func; // declararea si initializarea unui function pointer cu adresa functiei func
  
- std::cout << func << '​\n';​ +    ​std::cout << func << '​\n';​ 
- std::cout << functionPtr << '​\n';​ // afiseaza aceeasi adresa cu cea de la linia anterioara+    std::cout << functionPtr << '​\n';​ // afiseaza aceeasi adresa cu cea de la linia anterioara
  
- return 0;+    ​return 0;
 } }
 </​code>​ </​code>​
Line 617: Line 610:
 void interschimbare(int* a, int* b) void interschimbare(int* a, int* b)
 { {
- if (a == NULL || b == NULL) +    ​if (a == NULL || b == NULL) 
-+    
- return; +        return; 
- }+    }
  
- int auxiliar = *a; +    ​int auxiliar = *a; 
- *a = *b; +    *a = *b; 
- *b = auxiliar;+    *b = auxiliar;
 } }
  
 void sortareVectorCrescator(int* vector, int* nrElemente) void sortareVectorCrescator(int* vector, int* nrElemente)
 { {
- for (int i = 0; i < *nrElemente - 1; i++) +    ​for (int i = 0; i < *nrElemente - 1; i++) 
-+    
- for (int j = i + 1; j < *nrElemente;​ j++) +        for (int j = i + 1; j < *nrElemente;​ j++) 
- +        
- if (vector[i] > vector[j]) +            if (vector[i] > vector[j]) 
- +            
- interschimbare(&​vector[i],​ &​vector[j]);​ +                interschimbare(&​vector[i],​ &​vector[j]);​ 
- +            
- +        
- }+    }
 } }
  
 void sortareVectorDescrescator(int* vector, int* nrElemente) void sortareVectorDescrescator(int* vector, int* nrElemente)
 { {
- for (int i = 0; i < *nrElemente - 1; i++) +    ​for (int i = 0; i < *nrElemente - 1; i++) 
-+    
- for (int j = i + 1; j < *nrElemente;​ j++) +        for (int j = i + 1; j < *nrElemente;​ j++) 
- +        
- if (vector[i] < vector[j]) +            if (vector[i] < vector[j]) 
- +            
- interschimbare(&​vector[i],​ &​vector[j]);​ +                interschimbare(&​vector[i],​ &​vector[j]);​ 
- +            
- +        
- }+    }
 } }
  
 void afisareVector(int* vector, int* nrElemente) void afisareVector(int* vector, int* nrElemente)
 { {
- for (int index = 0; index < *nrElemente;​ index++) +    ​for (int index = 0; index < *nrElemente;​ index++) 
-+    
- std::cout << vector[index] << ' '; +        std::cout << vector[index] << ' '; 
- }+    }
  
- std::cout << '​\n';​+    ​std::cout << '​\n';​
 } }
  
 int main() int main()
 { {
- int vector[10] = { 2, 1, 4, -3, 0, 5, -1, 8, 10, 9 }; +    ​int vector[10] = { 2, 1, 4, -3, 0, 5, -1, 8, 10, 9 }; 
- int nrElemente = 10;+    int nrElemente = 10;
  
- std::cout << "​Vectorul sortat crescator este: ";+    ​std::cout << "​Vectorul sortat crescator este: ";
  
- sortareVectorCrescator(vector,​ &​nrElemente);​ +    ​sortareVectorCrescator(vector,​ &​nrElemente);​ 
- afisareVector(vector,​ &​nrElemente);​+    afisareVector(vector,​ &​nrElemente);​
  
- std::cout << "​\nVectorul sortat descrescator este: ";+    ​std::cout << "​\nVectorul sortat descrescator este: ";
  
- sortareVectorDescrescator(vector,​ &​nrElemente);​ +    ​sortareVectorDescrescator(vector,​ &​nrElemente);​ 
- afisareVector(vector,​ &​nrElemente);​+    afisareVector(vector,​ &​nrElemente);​
  
- +    ​return 0;
- return 0;+
 } }
 </​code>​ </​code>​
Line 692: Line 684:
 void interschimbare(int* a, int* b) void interschimbare(int* a, int* b)
 { {
- if (a == NULL || b == NULL) +    ​if (a == NULL || b == NULL) 
-+    
- return; +        return; 
- }+    }
  
- int auxiliar = *a; +    ​int auxiliar = *a; 
- *a = *b; +    *a = *b; 
- *b = auxiliar;+    *b = auxiliar;
 } }
  
 bool ordonareCrescatoare(int a, int b) bool ordonareCrescatoare(int a, int b)
 { {
- return a < b;+    ​return a < b;
 } }
  
 bool ordonareDescrescatoare(int a, int b) bool ordonareDescrescatoare(int a, int b)
 { {
- return a > b;+    ​return a > b;
 } }
  
 void sortareVector(int* vector, int* nrElemente, bool (*comparator)(int,​ int)) void sortareVector(int* vector, int* nrElemente, bool (*comparator)(int,​ int))
 { {
- for (int i = 0; i < *nrElemente - 1; i++) +    ​for (int i = 0; i < *nrElemente - 1; i++) 
-+    
- for (int j = i + 1; j < *nrElemente;​ j++) +        for (int j = i + 1; j < *nrElemente;​ j++) 
- +        
- if (comparator(vector[i],​ vector[j]) == false) +            if (comparator(vector[i],​ vector[j]) == false) 
- +            
- interschimbare(&​vector[i],​ &​vector[j]);​ +                interschimbare(&​vector[i],​ &​vector[j]);​ 
- +            
- +        
- }+    }
 } }
  
 void afisareVector(int* vector, int* nrElemente) void afisareVector(int* vector, int* nrElemente)
 { {
- for (int index = 0; index < *nrElemente;​ index++) +    ​for (int index = 0; index < *nrElemente;​ index++) 
-+    
- std::cout << vector[index] << ' '; +        std::cout << vector[index] << ' '; 
- }+    }
  
- std::cout << '​\n';​+    ​std::cout << '​\n';​
 } }
  
 int main() int main()
 { {
- int vector[10] = { 2, 1, 4, -3, 0, 5, -1, 8, 10, 9 }; +    ​int vector[10] = { 2, 1, 4, -3, 0, 5, -1, 8, 10, 9 }; 
- int nrElemente = 10;+    int nrElemente = 10;
  
- std::cout << "​Vectorul sortat crescator este: ";+    ​std::cout << "​Vectorul sortat crescator este: ";
  
- sortareVector(vector,​ &​nrElemente,​ ordonareCrescatoare);​ +    ​sortareVector(vector,​ &​nrElemente,​ ordonareCrescatoare);​ 
- afisareVector(vector,​ &​nrElemente);​+    afisareVector(vector,​ &​nrElemente);​
  
- std::cout << "​\nVectorul sortat descrescator este: ";+    ​std::cout << "​\nVectorul sortat descrescator este: ";
  
- sortareVector(vector,​ &​nrElemente,​ ordonareDescrescatoare);​ +    ​sortareVector(vector,​ &​nrElemente,​ ordonareDescrescatoare);​ 
- afisareVector(vector,​ &​nrElemente);​+    afisareVector(vector,​ &​nrElemente);​
  
- +    ​return 0;
- return 0;+
 } }
 </​code>​ </​code>​
Line 762: Line 753:
 === Variabile constante === === Variabile constante ===
  
-La fel ca în C, în C++ putem declara variabile constante folosind cuvântul cheie **const**. Așa cum le spune și numele variabilele constante sunt cele care odată inițializate cu o valoare **nu** mai pot fi modificate.+La fel ca în C, în C++ putem declara variabile constante folosind cuvântul cheie **const**. Așa cum le spune și numele variabilele constante sunt acea categorie de variabile ​care odată ​ce au fost inițializate cu o valoare **nu** mai pot fi modificate ​ulterior.
  
 <note warning>​O **variabilă constantă** se ințializează pe linia unde a fost **declarată** altfel va genera o eroare de compilare.</​note>​ <note warning>​O **variabilă constantă** se ințializează pe linia unde a fost **declarată** altfel va genera o eroare de compilare.</​note>​
Line 773: Line 764:
 int main() int main()
 { {
- const float pi = 3.14f; // variabila constanta corect declarata +    ​const float pi = 3.14f; // variabila constanta corect declarata 
- const double k; // eroare de compilare variabila constanta este neinitializata+    const double k; // eroare de compilare variabila constanta este declarata dar neinitializata
  
- int a = 2; +    ​int a = 2; 
- int b = 3;+    int b = 3;
  
- const int suma = a + b; // corect+    ​const int suma = a + b; // corect 
 +    suma = 20; // incorect, o variabila constanta nu mai poate fi modificata dupa ce a fost declarata si initializata
  
- suma = 20; // incorect, o variabila constanta nu mai poate fi modificata dupa declarare si initializare +    ​return 0;
- +
- return 0;+
 } }
 </​code>​ </​code>​
Line 796: Line 786:
     int a = 2;     int a = 2;
     int b = 3;     int b = 3;
 +
 +    // Situatia 1
  
     // Pointer la un int, dar pointerul nu poate modifica valoarea la care pointeaza     // Pointer la un int, dar pointerul nu poate modifica valoarea la care pointeaza
Line 804: Line 796:
     // P2 este un pointer la un int constant (valoarea la care pointeaza nu poate fi modificata prin intermediul lui p2)     // P2 este un pointer la un int constant (valoarea la care pointeaza nu poate fi modificata prin intermediul lui p2)
     int const* p2 = &b;     int const* p2 = &b;
 +
 +    // Situatia 2
 +
 +    // Pointer constant la un int
 +    // P3 este un pointer constant la un int (pointerul in sine nu poate fi schimbat, dar valoarea la care pointeaza poate fi modificata)
 +    int* const p3 = &a;
 +
 +    // Situatia 3
  
     // Pointer constant la un int constant     // Pointer constant la un int constant
-    // P3 este un pointer constant la un int constant si pointerul ​în sine nu poate fi schimbat (nu poate pointa catre alta adresa) +    // P3 este un pointer constant la un int constant si pointerul ​in sine nu poate fi schimbat (nu poate pointa catre alta adresa) 
-    const int* const p3 = &a;+    const int* const p4 = &a;
  
     // Efectiv aceeași declaratie ca p3, dar cu sintaxa diferita     // Efectiv aceeași declaratie ca p3, dar cu sintaxa diferita
-    // P3 este un pointer constant la un int constant si pointerul ​în sine nu poate fi schimbat +    // P4 este un pointer constant la un int constant si pointerul ​in sine nu poate fi schimbat 
-    int const* const p4 = &a;+    int const* const p5 = &a;
  
     *p1 = 5; // eroare de compilare     *p1 = 5; // eroare de compilare
-    p1 = &b; // corect+    p1 = &b; // valid
  
     *p2 = *p1; // eroare de compilare     *p2 = *p1; // eroare de compilare
     p2 = p1; // valid     p2 = p1; // valid
  
-    *p3 = 50; // eroare de compilare +    *p3 = *p2; // valid 
-    ​p3 = p2; // eroare de compilare+    p3 = &b; // eroare de compilare 
 + 
 +    *p4 = 50; // eroare de compilare 
 +    ​p4 = p2; // eroare de compilare
  
-    ​p4 = p1; // eroare de compilare +    ​p5 = p1; // eroare de compilare 
-    *p4 = 10; // eroare de compilare+    *p5 = 10; // eroare de compilare
  
     return 0;     return 0;
Line 837: Line 840:
 **GIT** este un sistem de control al versiunilor distribuit, dezvoltat de **Linus Torvalds** în 2005 pentru a gestiona kernel-ul Linux. În prezent, este cel mai folosit sistem de versionare, iar împreună cu platforma **GitHub** oferă un cadru complet pentru dezvoltare colaborativă,​ versionare și backup al proiectelor software. **GIT** este un sistem de control al versiunilor distribuit, dezvoltat de **Linus Torvalds** în 2005 pentru a gestiona kernel-ul Linux. În prezent, este cel mai folosit sistem de versionare, iar împreună cu platforma **GitHub** oferă un cadru complet pentru dezvoltare colaborativă,​ versionare și backup al proiectelor software.
  
-=== De ce să folosim Git și GitHub ===+=== De ce să folosim Git și GitHub===
  
   * **Lucru colaborativ** – mai mulți programatori pot contribui la același proiect.   * **Lucru colaborativ** – mai mulți programatori pot contribui la același proiect.
Line 843: Line 846:
   * **Istoricul modificărilor** – putem reveni oricând la o versiune anterioară.   * **Istoricul modificărilor** – putem reveni oricând la o versiune anterioară.
   * **Gestionarea branch-urilor** – dezvoltare paralelă și integrare prin **merge**.   * **Gestionarea branch-urilor** – dezvoltare paralelă și integrare prin **merge**.
-  * **Integrare cu unelte moderne** – GitHub permite **code review**, **issue tracking** și **CI/CD**.+  * **Integrare cu unelte moderne** – paltforma ​GitHub permite **code review**, **issue tracking** și **CI/CD**.
  
 === Termeni specifici === === Termeni specifici ===
Line 937: Line 940:
 === Ce ar trebui să facem? === === Ce ar trebui să facem? ===
  
-  - Să instalăm Git pe calculator +  - Să instalăm Git pe mașinile noastre 
-  - Să avem un cont pe **GitHub**+  - Să avem sau să ne facem un cont pe platforma ​**GitHub** 
 +  - La **prima** utilizare după ce am instalat Git-ul trebuie să rulăm comenzile **git config %%--%%global user.name** și **git config %%--%%global user.email** 
 +  - Să ne setăm o cheie **ssh** conform instrucțiunilor de [[https://​www.youtube.com/​watch?​v=2kuG9ElVMhM|aici]]. 
 + 
 +==== ====
  
 <note tip> <note tip>
-  * Pentru descărcare git accesați site-ul următor: [[https://​git-scm.com/​downloads|Download ​git]] +  * Pentru ​descărca git-ul accesați site-ul următor: [[https://​git-scm.com/​downloads|Download ​Git]] 
-  * Pentru instalare git urmăriți acest tutorial: [[https://​www.youtube.com/​watch?​v=iYkLrXobBbA|Tutorial instalare ​git]] +  * Pentru instalare git urmăriți acest tutorial: [[https://​www.youtube.com/​watch?​v=iYkLrXobBbA|Tutorial instalare ​Git]] 
-  * Pentru a vă crea un cont pe GitHub urmăriți acest tutorial: ​[[https://​youtu.be/​Gn3w1UvTx0A|Creare cont GitHub]]+  * Pentru a vă crea un cont pe GitHub ​puteți ​urmări ​indicațiile de [[https://​youtu.be/​Gn3w1UvTx0A|aici]]
 </​note>​ </​note>​
 ==== Concluzii ==== ==== Concluzii ====
  
-În cadrul acestui laborator am explorat asemănările dintre **C** și **C++**, observând ​că ambele limbaje folosesc **aceeași sintaxă** de bază pentru **variabile**,​ **funcții** și **instrucțiuni**. De asemenea, am înțeles în mare ce sunt **Git** și **GitHub** și am învățat să **inițializăm** și să **clonăm** repository-uri,​ să lucrăm cu **branch-uri**,​ să facem **commit-uri** și să folosim comenzi precum **push** sau **pull**. În esență laboratorul și-a propus trecerea lină de la **C** la **C++** cât și pregătirea mediului de lucru pe partea de **Git** și **Github**.+În cadrul acestui laborator am explorat asemănările dintre **C** și **C++** ​și am observat ​că ambele limbaje folosesc **aceeași sintaxă** de bază pentru **variabile**,​ **funcții** și **instrucțiuni**. De asemenea, am înțeles în mare ce sunt **Git** și **GitHub** și am învățat să **inițializăm** și să **clonăm** repository-uri,​ să lucrăm cu **branch-uri**,​ să facem **commit-uri** și să folosim comenzi precum **push** sau **pull**. În esență laboratorul și-a propus trecerea lină de la **C** la **C++** cât și pregătirea mediului de lucru pe partea de **Git** și **Github**.
poo-is-ab/laboratoare/01.1758744887.txt.gz · Last modified: 2025/09/24 23:14 by razvan.cristea0106
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0