"Prime factorization" est un programme écrit en langage C. Il prend en entrée un fichier texte de nombres et renvoie un nouveau fichier texte avec, à chaque ligne, le nombre à factoriser et la liste de ses diviseurs premiers. Le programme fonctionne en "muli-threading" et le nombre de threads est paramétrable.
## Objectif du projet
Convertir et optimiser un programme python en langage C et retourner les diviseurs premiers de chaque entier d'une liste de nombres.
## Fichier
***Makefile** :Permet l'exécution de commandes (compilation du code, exécution des tests).
***run.c** : Contient les fonctions du programme ainsi que le *run* pour lancer le programme.
***run.h** :Contient la déclaration des fonctions de base du programme.
***test.c** :Contient des tests en CUnit permettant de tester le programme.
***Test_file** :Fichier contenant différents input et output pour divers exemples de nombres (entiers,petits,grands).
## Librairies utilisées
- Librairies standards en C
- Librairie pthreads et semaphores: exécution des threads et des semaphores
- Librairie Cunit: utiliser pour les tests unitaires
- Librairie time: calcule le temps d'exécution du programme
## Installation
Les packages suivants doivent être installés :
...
...
@@ -66,4 +84,4 @@ Note :
* Le fonctionnement complet pour un fichier d'une ligne : check du format et des diviseurs (N = 4)
* Le fonctionnement complet pour un fichier de 100 lignes : check du nombre de lignes (réalisé avec N = 4 puis N = 1)