From ac753b6bcf024f7486de511adeb6b7f7eec42733 Mon Sep 17 00:00:00 2001 From: Louis Malevez Date: Wed, 22 Apr 2020 16:00:53 +0200 Subject: [PATCH] =?UTF-8?q?Fonction=20de=20factorisation=20qui=20prends=20?= =?UTF-8?q?une=20liste=20chain=C3=A9e=20et=20=C3=A9crit=20l'entier=20n=20e?= =?UTF-8?q?t=20ses=20diviseurs=20dedans?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Factor.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Factor.h diff --git a/Factor.h b/Factor.h new file mode 100644 index 0000000..ebb5d7a --- /dev/null +++ b/Factor.h @@ -0,0 +1,40 @@ +// +// Created by Louis Malevez on 22-04-20. +// + +#ifndef PROJET_Q4_GROUPE_O4_FACTOR_H +#define PROJET_Q4_GROUPE_O4_FACTOR_H +#include +#include + + +void primeFactors(struct dblist *l,int n){// prends un fichier et écrit un entier et ses diviseurs dans une liste chainée + + int count1=0; + int count2=0; + + PushBack(l,n); + while (n%2 == 0) + { + if(count1==0) PushBack(l,2); + n = n/2; + count1+=1; + } + for (int i = 3; i*i <= n; i = i+2) + { + while (n%i == 0){ + + if(count2==0) PushBack(l,i); + n=n/i; + count2+=1; + } + count2=0; + } + if (n > 2) + PushBack(l,n); + + + +} + +#endif //PROJET_Q4_GROUPE_O4_FACTOR_H -- GitLab