# C Exercises: Get the maximum product from a given integer after breaking the integer into the sum of at least two positive integers

## C Programming Mathematics: Exercise-15 with Solution

Write a C program to get the maximum product of a given integer after breaking the integer into the sum of at least two positive integers.

Example:

Input: 12

Output: 81

Explanation: 12 = 3 + 3 + 3 + 3, 3 x 3 × 3 × 3 = 81.

Input: 7

Output: 12

Explanation: 7 = 3 + 2 + 2, 3 x 2 x 2 = 12.

**Visual Presentation:**

**Sample Solution:**

**C Code:**

```
#include <stdio.h> // Including standard input-output library
#include <math.h> // Including math library for pow function
#include <stdlib.h> // Including standard library for exit function
// Function to calculate the maximum product after breaking the integer
int integer_Break(int n) {
if (n == 2) { // If n is equal to 2
return 1; // Return 1 as maximum product
} else if (n == 3) { // If n is equal to 3
return 2; // Return 2 as maximum product
} else if (n % 3 == 0) { // If n is divisible by 3
return (int) pow(3, n / 3); // Calculate maximum product using pow function
} else if (n % 3 == 1) { // If n leaves remainder 1 when divided by 3
return 2 * 2 * (int) pow(3, (n - 4) / 3); // Calculate maximum product
} else { // If n leaves remainder 2 when divided by 3
return 2 * (int) pow(3, n / 3); // Calculate maximum product
}
}
// Main function
int main(void)
{
int n = 12; // Declare and initialize integer variable n with value 12
printf("\nMaximum product of %d after breaking the integer %d ", n, integer_Break(n)); // Print the maximum product
n = 7; // Assign value 7 to n
printf("\nMaximum product of %d after breaking the integer %d ", n, integer_Break(n)); // Print the maximum product
return 0; // Return 0 to indicate successful termination
}
```

Sample Output:

Maximum product of 12 after breaking the integer 81 Maximum product of 7 after breaking the integer 12

**Flowchart: **

**C Programming Code Editor:**

**Improve this sample solution and post your code through Disqus.**

**Previous:** Write a C programming to calculate the number of 1's in their binary representation and return them as an array.

**Next:** Write a C programming to print numbers from 1 to an given integer(N) in lexicographic order.

**What is the difficulty level of this exercise?**

Test your Programming skills with w3resource's quiz.

**It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.**

https://www.w3resource.com/c-programming-exercises/math/c-math-exercise-15.php

**Weekly Trends and Language Statistics**- Weekly Trends and Language Statistics