How to find the consecutive prime numbers which sum of them equal to N in C

1 Answer

0 votes
#include <math.h>
#include <stdio.h>
#include <stdbool.h>
  
bool isPrime(int n) {
    if (n == 0 || n == 1) {
        return false;
    }
  
    for (int i = 2; i <= sqrt(n); i++) {
        if (n % i == 0) {
            return false;
        }
    }
    
    return true;
}
 
void findConsecutivePrimeSumEqualTo(int n) {
    int sum = 0;
    for (int i = 2; i < n; i++) {
         if (isPrime(i)) {
            printf("%d ", i);
            sum += i;
            if (sum == n) {
                break;
            }
            if (sum > n) {
                puts("Not Found");
                break;
            }
         }
    }
}
 
int main(void) {
    findConsecutivePrimeSumEqualTo(41);
    
    return 0;
}
  
  
  
  
/*
run:
  
2 3 5 7 11 13 
  
*/

 



answered Jan 28, 2024 by avibootz
edited Jan 28, 2024 by avibootz
...