diff --git a/.idea/vcs.xml b/.idea/vcs.xml
index 35eb1dd..13aec3e 100644
--- a/.idea/vcs.xml
+++ b/.idea/vcs.xml
@@ -2,5 +2,6 @@
+
\ No newline at end of file
diff --git a/Algo/Cours/Cpp/Cpp1.jpg b/Algo/Cours/Cpp/Cpp1.jpg
new file mode 100644
index 0000000..01adf09
Binary files /dev/null and b/Algo/Cours/Cpp/Cpp1.jpg differ
diff --git a/Algo/Cours/Cpp/Cpp2.jpg b/Algo/Cours/Cpp/Cpp2.jpg
new file mode 100644
index 0000000..cf4423f
Binary files /dev/null and b/Algo/Cours/Cpp/Cpp2.jpg differ
diff --git a/Algo/tp/Cpp/3.5_tp/Makefile b/Algo/tp/Cpp/3.5_tp/Makefile
new file mode 100644
index 0000000..88f4002
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/Makefile
@@ -0,0 +1,26 @@
+#CC : le compilateur à utiliser
+CC=g++
+
+#CFLAGS : les options de compilation
+CFLAGS= -std=c++17 -Wall
+
+# les fichiers sources : tous les fichiers présents dans src/
+SRC=$(wildcard src/*.cpp)
+
+# les fichiers objets (.o)
+OBJ=$(patsubst src/%.cpp,obj/%.o,$(SRC))
+
+
+#edition des liens : génération de l'exécutable à partir des .o
+bin/exe: $(OBJ)
+ $(CC) $(OBJ) -o $@
+
+# génération des .o à partir des .cpp et .hpp crrespondants :
+obj/%.o: src/%.cpp
+ $(CC) $(CFLAGS) -c $< -o $@
+
+#nettoyage : destruction des .o et de l'exécutable
+clean:
+ rm obj/*.o bin/exe
+
+
diff --git a/Algo/tp/Cpp/3.5_tp/src/carte.cpp b/Algo/tp/Cpp/3.5_tp/src/carte.cpp
new file mode 100644
index 0000000..d819e54
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/carte.cpp
@@ -0,0 +1,10 @@
+#include "carte.hpp"
+
+#include
+
+
+using namespace std;
+
+Carte::Carte(Nom nom, Couleur couleur)
+ : nom{nom}, couleur{couleur}
+{}
diff --git a/Algo/tp/Cpp/3.5_tp/src/carte.hpp b/Algo/tp/Cpp/3.5_tp/src/carte.hpp
new file mode 100644
index 0000000..a855a8e
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/carte.hpp
@@ -0,0 +1,38 @@
+#ifndef CARTE_HPP
+#define CARTE_HPP
+
+#include
+
+enum class Couleur {
+ BLEU,
+ ROUGE,
+ VERT,
+ ROSE,
+ JAUNE,
+ ORANGE,
+ NOIR
+};
+
+enum class Nom {
+ ROI,
+ RENNE,
+ CAVALIER,
+ DRAGON,
+ ENCHANTEUR,
+ MOINE,
+ PAYSAN,
+ SORCIER
+};
+
+class Carte {
+
+ Nom nom;
+ Couleur couleur;
+
+public:
+
+ Carte(Nom nom, Couleur couleur);
+
+};
+
+#endif // CARTE_HPP
\ No newline at end of file
diff --git a/Algo/tp/Cpp/3.5_tp/src/jeu.cpp b/Algo/tp/Cpp/3.5_tp/src/jeu.cpp
new file mode 100644
index 0000000..f3b585d
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/jeu.cpp
@@ -0,0 +1,17 @@
+// #include "jeu.hpp"
+
+// #include
+
+
+// using namespace std;
+
+// Jeu::Jeu()
+// :
+// {}
+
+
+// ostream &operator<<(ostream &os, const Jeu &j) {
+
+// return os;
+// }
+
diff --git a/Algo/tp/Cpp/3.5_tp/src/jeu.hpp b/Algo/tp/Cpp/3.5_tp/src/jeu.hpp
new file mode 100644
index 0000000..4221b1e
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/jeu.hpp
@@ -0,0 +1,17 @@
+// #ifndef JEU_HPP
+// #define JEU_HPP
+
+// #include
+
+// class Jeu {
+
+// public:
+// Jeu();
+
+// friend std::ostream &operator<<(ostream &os, const Jeu &j);
+
+// ~Jeu()=default;
+
+// };
+
+// #endif // JEU_HPP
\ No newline at end of file
diff --git a/Algo/tp/Cpp/3.5_tp/src/joueur.cpp b/Algo/tp/Cpp/3.5_tp/src/joueur.cpp
new file mode 100644
index 0000000..ec0a10c
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/joueur.cpp
@@ -0,0 +1,17 @@
+#include "joueur.hpp"
+
+#include
+
+
+using namespace std;
+
+Joueur::Joueur(string pseudo)
+ : pseudo{pseudo}
+{}
+
+
+ostream &operator<<(ostream &os, const Joueur &j) {
+
+ return os;
+}
+
diff --git a/Algo/tp/Cpp/3.5_tp/src/joueur.hpp b/Algo/tp/Cpp/3.5_tp/src/joueur.hpp
new file mode 100644
index 0000000..ff41642
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/joueur.hpp
@@ -0,0 +1,27 @@
+#ifndef JOUEUR_HPP
+#define JOUEUR_HPP
+
+#include
+#include
+#include "carte.hpp"
+
+class Joueur {
+
+ std::string pseudo;
+ list lesCartes;
+
+public:
+
+ Joueur(std::string pseudo);
+
+ std::string getPseudo();
+
+ Carte donnerCarte(int num);
+ bool recevoirCarte(Carte c);
+ void prendreCarte(Joueur j);
+
+ ~Joueur()=default;
+
+};
+
+#endif // JOUEUR_HPP
\ No newline at end of file
diff --git a/Algo/tp/Cpp/3.5_tp/src/main.cpp b/Algo/tp/Cpp/3.5_tp/src/main.cpp
new file mode 100644
index 0000000..d2ae415
--- /dev/null
+++ b/Algo/tp/Cpp/3.5_tp/src/main.cpp
@@ -0,0 +1,7 @@
+
+
+
+int main() {
+
+return 0;
+}
\ No newline at end of file
diff --git a/Algo/tp/Cpp/3.5_tp/tp4_sorcierNoir.pdf b/Algo/tp/Cpp/3.5_tp/tp4_sorcierNoir.pdf
new file mode 100644
index 0000000..30dbd35
Binary files /dev/null and b/Algo/tp/Cpp/3.5_tp/tp4_sorcierNoir.pdf differ
diff --git a/Algo/tp/Cpp/4_tp/bin/exe b/Algo/tp/Cpp/4_tp/bin/exe
deleted file mode 100755
index d8c8091..0000000
Binary files a/Algo/tp/Cpp/4_tp/bin/exe and /dev/null differ
diff --git a/Algo/tp/Cpp/4_tp/src/livreRecettes.cpp b/Algo/tp/Cpp/4_tp/src/livreRecettes.cpp
index 8e1cfae..e8dd411 100644
--- a/Algo/tp/Cpp/4_tp/src/livreRecettes.cpp
+++ b/Algo/tp/Cpp/4_tp/src/livreRecettes.cpp
@@ -1,29 +1,67 @@
#include "livreRecettes.hpp"
+#include "recetteAffichage.hpp"
+#include "ingredient.hpp"
+#include