From bb48e4c3de1c460d1c7e22da9e18e64a9804d718 Mon Sep 17 00:00:00 2001
From: Amrani <yanis1.amrani@etu.u-pec.fr>
Date: Thu, 20 Mar 2025 17:05:50 +0100
Subject: [PATCH] generateur fait

---
 td_tp/tp3/src/df.c    |  15 ++++++++++++---
 td_tp/tp3/src/test_df | Bin 0 -> 16128 bytes
 2 files changed, 12 insertions(+), 3 deletions(-)
 create mode 100755 td_tp/tp3/src/test_df

diff --git a/td_tp/tp3/src/df.c b/td_tp/tp3/src/df.c
index b1bf962..6efbc66 100644
--- a/td_tp/tp3/src/df.c
+++ b/td_tp/tp3/src/df.c
@@ -21,9 +21,18 @@ uint64 generateur(uint64 p)
 	uint64 g=2;
 	uint64 r=1;
 
-	while(r==1){
-		expm(g,(p-1)/2,p)
-		g++;
+	while(r){
+		if(expm(g,2,p) == 1){
+			g++;
+			continue;
+		}
+		if(expm(g,(p-1)/2,p) == 1){
+			g++;
+			continue;
+		}else{
+			return g;
+		}
+
 	}
 }
 
diff --git a/td_tp/tp3/src/test_df b/td_tp/tp3/src/test_df
new file mode 100755
index 0000000000000000000000000000000000000000..fa7943a5764f306d045fb30c5d5df98bc694e272
GIT binary patch
literal 16128
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

literal 0
HcmV?d00001