demo-combinations - int Factorial(int x PRE x>= 0 POST...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
// Programmer: Doug Hogan // Section: N/A // Program: Demo: Factorial, Permutations, Combinations // Date: October 12, 2008 // Description: This program computes the factorial using a function and demonstrates // a function using another function (and will be used for class // discussion on prototypes). // ????????????????????????????????????????????????????????????????????? // CLASS DISCUSSION QUESTION: WILL THIS ONE WORK? WHY OR WHY NOT? // ????????????????????????????????????????????????????????????????????? #include <iostream> using namespace std; int NumPermutations(int n, int r) // PRE: // POST: FCTVAL == number of ways to arrange r objects chosen from n { return Factorial(n)/Factorial(n-r);
Background image of page 1
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: } int Factorial(int x) // PRE: x >= 0 // POST: FCTVAL == x!, i.e. the factorial of x { int result = 1; // factorial of x; starts at 1 // as we'll multiply by it and // as 0! = 1 for(int i = 1; i <= x; i++) // multiply result by all numbers { // b/w 1 and x to find factorial result = result * i; } return result; } int NumCombinations(int n, int r) // PRE: n > 0 && r >= 0 && r <= n // POST: FCTVAL == number of ways to choose r objects chosen from n // (without regard to order) { return NumPermutations(n, r)/Factorial(r); } int main() { cout << "P(5, 2) = " << NumPermutations(5, 2) << endl; cout << "5 choose 2 = " << NumCombinations(5, 2) << endl; return 0; }...
View Full Document

This document was uploaded on 02/10/2011.

Ask a homework question - tutors are online