diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000000000000000000000000000000000000..15a15b218a29e09c9190992732698d646e4d659a
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Encoding" addBOMForNewFiles="with NO BOM" />
+</project>
\ No newline at end of file
diff --git a/.idea/galaxy_simulator.iml b/.idea/galaxy_simulator.iml
new file mode 100644
index 0000000000000000000000000000000000000000..bc2cd87409057301f546d83bd548111b9a241cb1
--- /dev/null
+++ b/.idea/galaxy_simulator.iml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="CPP_MODULE" version="4">
+  <component name="NewModuleRootManager">
+    <content url="file://$MODULE_DIR$" />
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+  </component>
+</module>
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000000000000000000000000000000000000..28a804d8932aba40f168fd757a74cb718a955a1a
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="JavaScriptSettings">
+    <option name="languageLevel" value="ES6" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c808ecc842bed3fd9c50ffab00b22e3e718ae37e
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/.idea/galaxy_simulator.iml" filepath="$PROJECT_DIR$/.idea/galaxy_simulator.iml" />
+    </modules>
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000000000000000000000000000000000000..94a25f7f4cb416c083d265558da75d457237d671
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a049483c98c230d2ccabb1da3ebb7a1ea9d5b279
--- /dev/null
+++ b/.idea/workspace.xml
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="CMakeRunConfigurationManager" shouldGenerate="true" shouldDeleteObsolete="true">
+    <generated />
+  </component>
+  <component name="CMakeSettings">
+    <configurations>
+      <configuration PROFILE_NAME="Debug" CONFIG_NAME="Debug" />
+    </configurations>
+  </component>
+  <component name="ChangeListManager">
+    <list default="true" id="43aff179-c306-46b9-b69f-eca5306fbf96" name="Default Changelist" comment="">
+      <change beforePath="$PROJECT_DIR$/Vector" beforeDir="false" afterPath="$PROJECT_DIR$/Vector" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Vector.c" beforeDir="false" afterPath="$PROJECT_DIR$/Vector.c" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Vector.h" beforeDir="false" afterPath="$PROJECT_DIR$/Vector.h" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/Vector.o" beforeDir="false" afterPath="$PROJECT_DIR$/Vector.o" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/makefile" beforeDir="false" afterPath="$PROJECT_DIR$/makefile" afterDir="false" />
+    </list>
+    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
+    <option name="SHOW_DIALOG" value="false" />
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+    <option name="LAST_RESOLUTION" value="IGNORE" />
+  </component>
+  <component name="FileEditorManager">
+    <leaf>
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/Vector.c">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="376">
+              <caret line="93" lean-forward="true" selection-start-line="93" selection-end-line="93" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/Vector.h">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="187">
+              <caret line="11" selection-start-line="11" selection-end-line="11" selection-end-column="54" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/makefile">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="102">
+              <caret line="6" lean-forward="true" selection-start-line="6" selection-end-line="6" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+    </leaf>
+  </component>
+  <component name="Git.Settings">
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+  </component>
+  <component name="IdeDocumentHistory">
+    <option name="CHANGED_PATHS">
+      <list>
+        <option value="$PROJECT_DIR$/Vector.h" />
+        <option value="$PROJECT_DIR$/makefile" />
+        <option value="$PROJECT_DIR$/Vector_Test.h" />
+        <option value="$PROJECT_DIR$/Vector_Test.c" />
+        <option value="$PROJECT_DIR$/Vector.c" />
+      </list>
+    </option>
+  </component>
+  <component name="ProjectFrameBounds" extendedState="7">
+    <option name="x" value="681" />
+    <option name="y" value="33" />
+    <option name="width" value="1050" />
+    <option name="height" value="730" />
+  </component>
+  <component name="ProjectView">
+    <navigator proportions="" version="1">
+      <foldersAlwaysOnTop value="true" />
+    </navigator>
+    <panes>
+      <pane id="ProjectPane">
+        <subPane>
+          <expand>
+            <path>
+              <item name="galaxy_simulator" type="b2602c69:ProjectViewProjectNode" />
+              <item name="galaxy_simulator" type="462c0819:PsiDirectoryNode" />
+            </path>
+          </expand>
+          <select />
+        </subPane>
+      </pane>
+      <pane id="Scope" />
+    </panes>
+  </component>
+  <component name="PropertiesComponent">
+    <property name="WebServerToolWindowFactoryState" value="false" />
+    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
+    <property name="nodejs_npm_path_reset_for_default_project" value="true" />
+  </component>
+  <component name="RunDashboard">
+    <option name="ruleStates">
+      <list>
+        <RuleState>
+          <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
+        </RuleState>
+        <RuleState>
+          <option name="name" value="StatusDashboardGroupingRule" />
+        </RuleState>
+      </list>
+    </option>
+  </component>
+  <component name="SvnConfiguration">
+    <configuration />
+  </component>
+  <component name="TaskManager">
+    <task active="true" id="Default" summary="Default task">
+      <changelist id="43aff179-c306-46b9-b69f-eca5306fbf96" name="Default Changelist" comment="" />
+      <created>1559227081243</created>
+      <option name="number" value="Default" />
+      <option name="presentableId" value="Default" />
+      <updated>1559227081243</updated>
+      <workItem from="1559227084365" duration="7898000" />
+    </task>
+    <servers />
+  </component>
+  <component name="TimeTrackingManager">
+    <option name="totallyTimeSpent" value="7898000" />
+  </component>
+  <component name="ToolWindowManager">
+    <frame x="-7" y="-7" width="1550" height="838" extended-state="6" />
+    <editor active="true" />
+    <layout>
+      <window_info id="Favorites" side_tool="true" />
+      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.24966443" />
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
+      <window_info anchor="bottom" id="Database Changes" />
+      <window_info anchor="bottom" id="Version Control" />
+      <window_info anchor="bottom" id="Terminal" />
+      <window_info anchor="bottom" id="Event Log" side_tool="true" />
+      <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="bottom" id="Find" order="1" />
+      <window_info anchor="bottom" id="Run" order="2" />
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info anchor="bottom" id="TODO" order="6" />
+      <window_info anchor="right" id="Database" />
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
+    </layout>
+  </component>
+  <component name="TypeScriptGeneratedFilesManager">
+    <option name="version" value="1" />
+  </component>
+  <component name="editorHistoryManager">
+    <entry file="file://$PROJECT_DIR$/../C/Annuaire/Directory.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="-969" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../C/Projet/joseph.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="561">
+          <caret line="33" column="7" selection-start-line="33" selection-start-column="7" selection-end-line="33" selection-end-column="35" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../C/Projet/makefile">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/makefile">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="102">
+          <caret line="6" lean-forward="true" selection-start-line="6" selection-end-line="6" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Vector_Test.h">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="17">
+          <caret line="1" column="17" selection-start-line="1" selection-start-column="17" selection-end-line="1" selection-end-column="17" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Vector_Test.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="243">
+          <caret line="21" column="1" lean-forward="true" selection-start-line="5" selection-end-line="21" selection-end-column="1" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Vector.h">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="187">
+          <caret line="11" selection-start-line="11" selection-end-line="11" selection-end-column="54" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/Vector.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="376">
+          <caret line="93" lean-forward="true" selection-start-line="93" selection-end-line="93" />
+        </state>
+      </provider>
+    </entry>
+  </component>
+</project>
\ No newline at end of file
diff --git a/Vector b/Vector
index 043b9d171973f3cd895bc6eec26761a8cc01a28f..d7a7464b3f5f3ec6b92a9cf3ae845c38e1633fbe 100644
Binary files a/Vector and b/Vector differ
diff --git a/Vector.c b/Vector.c
index 572646230c71d4a08859ad542175883614a37e73..8ad24b7b199cfdb9ca8a792deef38d9b6aaf312a 100644
--- a/Vector.c
+++ b/Vector.c
@@ -1,4 +1,114 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdbool.h>
+#include "Vector.h"
 
+
+vec *new_vec(double x, double y){
+
+    //Allocation de la mémoire nécessaire
+    vec *new_vec = malloc(sizeof(vec));
+
+    //On vérifie que l'allocation est bien faite
+    if (new_vec == NULL){
+        exit(1);
+    }
+    //Attribution des valeurs x et y
+    new_vec->x = x;
+    new_vec->y = y;
+
+    return new_vec;
+
+}
+
+vec *add_vec(const vec *const v1, const vec *const v2){
+
+    vec *add_vec = new_vec(0.0,0.0);
+    add_vec->x = v1->x + v2->x;
+    add_vec->y = v1->y + v2->y;
+
+    return add_vec;
+
+}
+
+vec *sub_vec(const vec *const v1, const vec *const v2){
+    vec *sub_vec = new_vec(0.0,0.0);
+    sub_vec->x = v1->x - v2->x;
+    sub_vec->y = v1->y - v2->y;
+
+    return sub_vec;
+
+}
+
+
+int Test_new_vec(){
+
+    vec *vector = new_vec(2.0,3.1);
+    if(vector->x == 2.0 && vector->y == 3.1){
+        printf("Test_new_vec IS OK\n");
+    }
+    else{
+        printf("Test_new_vec has an ERROR\n");
+    }
+    free(vector);
+}
+
+int Test_add_vec(){
+    vec *v1 = new_vec(2.5,3.2);
+    vec *v2 = new_vec(4.6,1.5);
+    vec *v3 = add_vec(v1,v2);
+
+    if(v3->x == 7.1 && v3->y == 4.7){
+        printf("Test_add_vec IS OK\n");
+    }
+    else {
+        printf("Test_add_vec has an ERROR\n");
+    }
+    free(v1);
+    free(v2);
+    free(v3);
+}
+
+
+int Test_sub_vec(){
+    vec *v1 = new_vec(2.5,3.2);
+    vec *v2 = new_vec(4.6,1.5);
+    vec *v3 = sub_vec(v1,v2);
+
+
+    if(v3->x == (v1->x-v2->x) && v3->y == (v1->y-v2->y)){
+        printf("Test_sub_vec IS OK\n");
+    }
+    else {
+        printf("Test_sub_vec has an ERROR\n");
+
+    }
+    free(v1);
+    free(v2);
+    free(v3);
+}
+
+
+
+int main_tests(){
+
+    Test_new_vec();
+    Test_add_vec();
+    Test_sub_vec();
+}
+
+
+
+int main(int argc, char *argv[]){
+    if(argc == 2) {
+        if (strcmp(argv[1], "test") == 0) {
+
+            main_tests();
+
+        }
+    }
+    else{
+        printf("OK\n");
+    }
+
+}
diff --git a/Vector.h b/Vector.h
index a3a5cc448f31f2ec294a30b4585af05e55f0b071..e4b94a3674a63e5df210d00bd65eaa6584ca4f50 100644
--- a/Vector.h
+++ b/Vector.h
@@ -2,23 +2,23 @@ typedef struct vec {
 double x, y;
 } vec;
 
-//Créer et initialiser un vecteur:
+//Créé et initialiser un vecteur:
 vec *new_vec(double x, double y);
 
-//Additionner deux vecteurs
+//Additionne deux vecteurs
 vec *add_vec(const vec *const v1, const vec *const v2);
 
-//Soustraire deux vecteurs
+//Soustrait deux vecteurs
 vec *sub_vec(const vec *const v1, const vec *const v2);
 
-//Multiplier un vecteur par un scalaire
+//Multiplie un vecteur par un scalaire
 vec *mul_vec(double alpha, const vec *const v2);
 
-//Calculer la norme d’un vecteur
+//Calcule la norme d’un vecteur
 double norm(const vec *const v1);
 
-//Calculer la distance entre deux vecteurs
+//Calcule la distance entre deux vecteurs
 double distance(const vec *const v1, const vec *const v2);
 
-//Afficher un vecteur (ça vous aidera pour le débuggage)
+//Affiche un vecteur
 void print_vec(const vec *const v);
diff --git a/Vector.o b/Vector.o
index 3b8b6aba6d2dbd6af2600acbeb3b690f638d14b3..447907399910ec8583ec3a32bf1f7fd6716fca85 100644
Binary files a/Vector.o and b/Vector.o differ
diff --git a/makefile b/makefile
index 8bcf9523b39e4ee4f74727987e5265d1c5175f0e..5354eb0aae456dc83ef120ef1a3a53d62a609eee 100644
--- a/makefile
+++ b/makefile
@@ -3,4 +3,4 @@ All: Vector
 Vector: Vector.o
 	gcc -o Vector Vector.o
 Vector.o: Vector.c
-	gcc -o Vector.o -c Vector.c 
+	gcc -o Vector.o -c Vector.c