From a422dceb44a38d376649a9ee174fce82d40120cc Mon Sep 17 00:00:00 2001
From: Arnaud Lefebvre <arnaud.lefebvre@student.uclouvain.be>
Date: Thu, 2 Apr 2020 15:15:46 +0200
Subject: [PATCH] =?UTF-8?q?Lecture=20de=20fichier=20+=20Ecriture=20dans=20?=
 =?UTF-8?q?un=20nouveau=20fichier=20(non=20optimis=C3=A9)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 main.c | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 main.c

diff --git a/main.c b/main.c
new file mode 100644
index 0000000..f32d778
--- /dev/null
+++ b/main.c
@@ -0,0 +1,41 @@
+#include <stdio.h>
+#include <stdlib.h>
+/*
+ * Ce code se compose en 4 parties :
+ * 1. avec la fonction <fscanf>, on met le chiffre du fichier dans une variable <chiffre>
+ * 2. on écris ce chiffre dans le fichier de sortie avec <fprintf>
+ * 3. on trouve les nombres premiers divisant <chiffre> qu'on écrit ensuite dans le fichier de sortie avec <fprintf>
+ * 4. toujours avec <fprintf>, on n'oublie pas de mettre "\n" pour passer à la ligne suivante
+ *
+ * Ce programme n'est pas optimisé et écris tous les diviseurs de <chiffre> même si ceux-ci apparaissent plus d'une fois
+ */
+int main() {
+    FILE *f_in = fopen("C:\\Users\\arnau\\OneDrive\\Bureau\\Projet V1.0\\example_input.txt", "r");
+    FILE *f_out = fopen("C:\\Users\\arnau\\OneDrive\\Bureau\\Projet V1.0\\example_output.txt", "w");
+    if (f_in == NULL) exit(1);
+    if (f_out == NULL) exit(1);
+
+    int chiffre = 0;
+
+    while (fscanf(f_in, "%d", &chiffre) != EOF)         //EOF == end of file
+    {
+        fprintf(f_out, "%d ", chiffre);
+
+        int i = 2;
+        while (chiffre != 1) {                                   // boucle non optimisée (à revoir)
+            if (chiffre % i == 0) {
+                while (chiffre % i == 0) {
+                    fprintf(f_out,"%d ", i);
+                    chiffre = chiffre/i;
+                }
+            }
+            i++;
+        }
+
+        fprintf(f_out, "\n");
+    }
+
+    fclose(f_in);
+    fclose(f_out);
+    return 0;
+}
\ No newline at end of file
-- 
GitLab