logo CodeStepByStep logo

diceSum2

Language/Type: C++ backtracking recursion

Write a recursive function named diceSum2 that is a variation of the previous problem, diceSum. Your function should accept two parameters: an integer representing a number of 6-sided dice to roll, and a desired sum, and output all possible combinations of values that could appear on the dice that would add up to exactly the given sum, showing only unique combinations of dice, ignoring order. For example, the call of diceSum2(2, 7); should print:

{1, 6}
{2, 5}
{3, 4}

The call of diceSum2(3, 7); should print:

{1, 1, 5}
{1, 2, 4}
{1, 3, 3}
{2, 2, 3}

If the number of digits passed is 0 or negative, or if the given number of dice cannot add up to exactly the given sum, print no output. Your function must use recursion, but you can use a single for loop if necessary.

Function: Write a C++ function as described, not a complete program.

You must log in before you can solve this problem.

Log In

Need help?

Stuck on an exercise? Contact your TA or instructor.

If something seems wrong with our site, please

Is there a problem? Contact us.