Skip to content
Extraits de code Groupes Projets
main.cpp 1,45 ko
Newer Older
  • Learn to ignore specific revisions
  • Nicolas De Jaegher's avatar
    Nicolas De Jaegher a validé
    #include <iostream>
    
    int main() {
    
    Nicolas De Jaegher's avatar
    Nicolas De Jaegher a validé
        int is_div(int number, int i){
        return (number % i) == 0;
    }
    
    int is_prime(int number){
        for (int i = 0; i < number/2; i++){
            if (is_div(number, i)){
                return 0;
            }
        }
        return 1;
    }
    
    typedef struct node{
        struct node* next;
        int value;
    } node_t;
    
    typedef struct queue{
        struct node* tail;
        struct node *head;
        int size;
    } queue_t;
    
    queue_t prime_divs(number){
        queue_t* rep;
        for(int i = 0; i < number/2; i++){
            if(is_prime(i) && is_div(number, i)){
                node_t* new;
                new -> next = NULL;
                new -> value = i;
                if(rep ->size == 0){
                    rep ->size = 1;
                    rep ->head = new;
                    rep -> tail = new;
                }
                else{
                    rep -> size ++;
                    rep -> tail -> next= new;
                    rep-> tail = new;
                }
            }
        }
        return *rep;
    }
    
    
    Nicolas De Jaegher's avatar
    Nicolas De Jaegher a validé
        int *prime_div_list(int number) {
            int count = 0;
            for (int i = 2; i < number / 2; i++) {
                if (is_prime(i) && is_div(number, i)) {
                    count++;
                }
            }
            int *prime_dividers = malloc(sizeof(int) * count);
            int index = 0;
            for (int i = 2; i < number / 2; i++) {
                if (is_prime(i) && is_div(number, i)) {
                    prime_dividers[index] = i;
                    index++;
                }
            }
            return prime_dividers;
        }
    }