Advertisement
pigg

計算階層、C、P、H

Jan 16th, 2016
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.31 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. unsigned __int64 jei(int n);
  4. int main()
  5. {
  6.     char input;
  7.     int jei_input;
  8.     int a,b;
  9.     cout << "請輸入計算 !、P、C、H,或輸入X離開本程式!!" << endl;
  10.     while (cin >> input)
  11.     {
  12.         switch (input)
  13.         {
  14.         case('C') :
  15.             cout << "請輸入兩個數字a,b,求C(a,b),(C a取b)" << endl;
  16.             cin >> a >> b;
  17.             cout << "C("<< a << "," << b << ") = " << (jei(a) / (jei(b)*jei(a - b)))<<endl;
  18.             break;
  19.         case('P') :
  20.             cout << "請輸入兩個數字a,b,求P(a,b),(P a取b)" << endl;
  21.             cin >> a >> b;
  22.             cout << "P(" << a << "," << b << ") = " << jei(a) / jei(a - b) << endl;
  23.             break;
  24.         case('H') :
  25.             cout << "請輸入兩個數字a,b,求H(a,b),(H a取b)" << endl;
  26.             cin >> a >> b;
  27.             cout << "H(" << a << "," << b << ") = " << jei(a + b - 1) / (jei(a - 1)*jei(b)) << endl;
  28.             break;
  29.         case('!') :
  30.             cout << "輸入一個數字N,求N!" << endl;
  31.             cin >> jei_input;
  32.             cout << jei_input <<"! = "<< jei(jei_input) << endl;
  33.             break;
  34.         case('X') :
  35.             return 0;
  36.         default:
  37.             cout << "輸入錯誤" << endl;
  38.             break;
  39.         }
  40.         cout << "請輸入計算 !、P、C、H,或輸入X離開本程式!!" << endl << endl;
  41.     }
  42. }
  43. unsigned __int64 jei(int n)
  44.     {
  45.         unsigned __int64 sum=1;
  46.         for (int i = 1; i <= n; i++)
  47.         {
  48.             sum *= i;
  49.         }
  50.         return sum;
  51.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement