diff --git a/question3/q3.c b/question3/q3.c
new file mode 100644
index 0000000000000000000000000000000000000000..ddf7b8a97bd5decd757ae650f4fcf87e81c11aeb
--- /dev/null
+++ b/question3/q3.c
@@ -0,0 +1,40 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <sys/types.h>
+
+#define FILE_LINK "myDir/data.txt"
+
+int main(int argc, char *argv[]) {
+
+	FILE *file;
+	char buffer[1024];
+	size_t nread;
+	
+	uid_t euid = geteuid();
+	uid_t egid = getegid();
+	uid_t ruid = getuid();
+	uid_t rgid = getgid();
+
+	printf("EUID : %u ", euid);
+	printf("EGID : %u ", egid);
+	printf("RUID : %u ", ruid);
+	printf("RGID : %u \n", rgid);
+	
+	file = fopen(FILE_LINK, "r");
+	
+	if(file == NULL) {
+		perror("Cant open file");
+		exit(EXIT_FAILURE);
+	} 
+	
+	printf("fichier ouvert!\n"); 
+	
+	while( (nread = fread(buffer, 1, sizeof buffer, file)) > 0) 
+		printf("%s", buffer);
+	
+	
+	fclose(file);
+
+return 0;
+}
diff --git a/question3/suid.c b/question3/suid.c
deleted file mode 100644
index 570b166448796ceed76f7a1589956748e7bc974a..0000000000000000000000000000000000000000
--- a/question3/suid.c
+++ /dev/null
@@ -1,7 +0,0 @@
-#include <stdio.h>
-
-int main(int argc, char *argv[])
-{
-    // TODO 
-    return 0;
-}
diff --git a/question4/q4.py b/question4/q4.py
new file mode 100644
index 0000000000000000000000000000000000000000..46641ea1fa7eddce29064166c8295accbfb6c90f
--- /dev/null
+++ b/question4/q4.py
@@ -0,0 +1,9 @@
+import os 
+
+print("EUID : " + str(os.getuid()))
+print("EGID : " + str(os.getgid()))
+
+
+
+
+
diff --git a/question4/suid.py b/question4/suid.py
deleted file mode 100644
index ecbff4d5402c73ef7a6a4f777db328b79553aafc..0000000000000000000000000000000000000000
--- a/question4/suid.py
+++ /dev/null
@@ -1,2 +0,0 @@
-print("TODO")
-