Exemple #1
0
void partitionPrime(int value)
{
  int arr[MAXLENGTH] = {0}; //Make array values all 0

  printf("partitionPrime %d\n", value);

  partPrime(value, arr, 0); //Intial starting index is 0
}
Exemple #2
0
void partitionPrime(int value)
{
  int ind = 0;
  
  printf("partitionPrime %d\n", value);
  void partPrime( int value, int * arr, int ind);
  
  int * arr = malloc(value * sizeof(int));
  partPrime(value, arr, ind);
  free(arr);
}
Exemple #3
0
void partPrime(int value, int * arr, int ind)
{
  int i;

  if(value == 0)
  {
    printArray(arr, ind);
    return;
  }

  for(i = 2; i <= value; i++)
  {
    if(isPrime(i)) //Only recall the function and place values if i is prime
    {
      arr[ind] = i;

      partPrime(value - i, arr, ind + 1);
    }
  }
}
Exemple #4
0
void partPrime(int value, int* arr, int ind)
{
  int n = 0;
  int primenum = 0;
  int prime(int n);
  
  if (value == 0)
  {
    printpart(arr, ind);
    return;
  }
  
  for (n = 1; n <= value; n++)
  {
      primenum = prime(n);
      if (primenum == 1)
      {
	arr[ind] = n;
	partPrime(value - n, arr, ind + 1);  
      }
  }
}