Mempron

LAB3.0 (new)

May 19th, 2019
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.57 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int Task1(int a, int n);
  6. int Task2(int a);
  7. double Task3(float n, double& result);
  8. int Task4(int n, int k);
  9. int Task5(int n, int k);
  10. int Task6(int a, int& n);
  11. int Task7(int n);
  12. int Task10(int n);
  13. int Task11F(int n);
  14. int Task11G(int n);
  15. int Task12F(int n);
  16. int Task12G(int n);
  17. void Task13(int n, int& F, int& G);
  18. int Task15(int k);
  19.  
  20. int main()
  21. {
  22.     int choice = 0, exit = 0;
  23.     do {
  24.         cout << "Enter from 1 to 12 to choose task or 0 to exit: "; cin >> choice;
  25.         if (choice == 0) exit = 1;
  26.         else if (choice == 1) {
  27.             int a, n;
  28.             cout << "Enter 'a': "; cin >> a;
  29.             cout << "Enter 'n': "; cin >> n;
  30.             if (n > 0)
  31.                 cout << "Result: " << Task1(a, n) << endl;
  32.             else
  33.                 cout << "Incorrect data..." << endl;
  34.  
  35.         }
  36.         else if (choice == 2) {
  37.             int a;
  38.             cout << "Enter 'a': "; cin >> a;
  39.             if (a >= 0)
  40.                 cout << "Result: " << Task2(a) << endl;
  41.             else
  42.                 cout << "Incorrect data..." << endl;
  43.         }
  44.         else if (choice == 3) {
  45.             double result = 1;
  46.             float n;
  47.             cout << "Enter 'n': "; cin >> n;
  48.             if (n >= 0)
  49.                 cout << "Result: " << Task3(n, result) << endl;
  50.             else
  51.                 cout << "Incorrect data..." << endl;
  52.             result = 0;
  53.         }
  54.         else if (choice == 4) {
  55.             int n, k;
  56.             cout << "Enter k (k <= n): "; cin >> k;
  57.             cout << "Enter n (n >= k): "; cin >> n;
  58.             if (k > n || k < 0 || n < 0)
  59.                 cout << "Incorrect data..." << endl;
  60.             else
  61.                 cout << "C(" << n << ", " << k << "): " << Task4(n, k) << endl;
  62.         }
  63.         else if (choice == 5) {
  64.             int n, k;
  65.             do {
  66.                 cout << "Enter 'n': "; cin >> n;
  67.                 cout << "Enter 'k': "; cin >> k;
  68.             } while (k < 0 && n < 0);
  69.             cout << "Result: " << Task5(n, k) << endl;
  70.         }
  71.         else if (choice == 6) {
  72.             int a, n;
  73.             cout << "Enter 'a': "; cin >> a;
  74.             cout << "Count: " << Task6(a, n) << endl;
  75.             cout << "Max: " << n << endl;
  76.         }
  77.         else if (choice == 7) {
  78.             int n;
  79.             cout << "Enter 'n': "; cin >> n;
  80.             if (n > 0)
  81.                 cout << "Result: " << Task7(n) << endl;
  82.             else
  83.                 cout << "Incorrect data..." << endl;
  84.         }
  85.         else if (choice == 8) {
  86.             cout << "Contact me: mempron@outlook.com; to ask done this one";
  87.         }
  88.         else if (choice == 9) {
  89.             cout << "Contact me: mempron@outlook.com; to ask done this one";
  90.         }
  91.         else if (choice == 10) {
  92.             int n = 0;
  93.             cout << "Enter 'n': "; cin >> n;
  94.             cout << "Result: " << Task10(n) << endl;
  95.         }
  96.         else if (choice == 11) {
  97.             int n = 0;
  98.             cout << "Enter 'n': "; cin >> n;
  99.            
  100.             cout << "Result: " << Task11F(n) + Task11G(n) << endl;
  101.         }
  102.         else if (choice == 12) {
  103.             int n = 0;
  104.             cout << "Enter 'n': "; cin >> n;
  105.             cout << "Result: " << Task12F(n) + Task12G(n) << endl;
  106.         }
  107.         else if (choice == 13) {
  108.             int n = 0, F = 1, G = 1;
  109.             cout << "Enter 'n': "; cin >> n;
  110.             Task13(n, F, G);
  111.             cout << "Result: " << F / G << endl;
  112.         }
  113.         else if (choice == 14) {
  114.             cout << "Contact me: mempron@outlook.com; to ask done this one";
  115.         }
  116.         else if (choice == 15) {
  117.             int n, k;
  118.             cout << "Enter 'a': "; cin >> n;
  119.             cout << "Enter 'n': "; cin >> k;
  120.             if (k > 0)
  121.                 cout << "Result: " << n + Task15(k) << endl;
  122.             else
  123.                 cout << "Incorrect data..." << endl;
  124.         }
  125.         else cout << "Incorrect data..." << endl;
  126.     } while (!exit);
  127. }
  128.  
  129. int Task1(int a, int n) {
  130.     if (n == 0) return 1;
  131.     else if (n == 1) return a;
  132.     return a * Task1(a, n - 1);
  133. }
  134. int Task2(int a) {
  135.     if (a == 0) return 1;
  136.     return a * Task2(a - 1);
  137. }
  138. double Task3(float n, double &result) {
  139.     int fact = Task2(n);
  140.     if (n == 0)
  141.         return 1;
  142.     return Task3(n - 1, result) + (1. / fact);
  143. }
  144. int Task4(int n, int k) {
  145.     if (k == 0 || k == n)
  146.         return 1;
  147.     else
  148.         return Task4(n - 1, k) + Task4(n - 1, k - 1);
  149. }
  150. int Task5(int n, int k) {
  151.     if (k == 1) return n;
  152.     return n + Task5(n, k - 1);
  153. }
  154. int Task6(int a, int& n) {
  155.     if (n <= a % 10) n = a % 10;
  156.     if (a >= 0 && a <= 9) return 1;
  157.     else return Task6(a / 10, n) + 1;
  158. }
  159. int Task7(int n) {
  160.     if (n == 0) return 0;
  161.     if (n == 1) return 1;
  162.     return Task7(n - 1) + Task7(n - 2);
  163. }
  164. int Task10(int n) {
  165.     if (n == 1) return 3;
  166.     return Task10(n - 1) * (n - 1);
  167. }
  168. int Task11F(int n) {
  169.     if (n == 0) return 0;
  170.     return Task11F(n - 1) + n;
  171. }
  172. int Task11G(int n) {
  173.     if (n == 1) return 1;
  174.     return Task11G(n - 1) * n;
  175. }
  176. int Task12F(int n) {
  177.     if (n == 1) return 1;
  178.     return 2 * Task12G(n - 1) + 5 * n;
  179. }
  180. int Task12G(int n) {
  181.     if (n == 1) return 1;
  182.     return Task12F(n - 1) + 2 * n;
  183. }
  184. void Task13(int n, int& F, int& G) {
  185.     if (n == 1) {
  186.         F = 1;
  187.         G = 1;
  188.         return;
  189.     }
  190.     int F1 = G;
  191.     F = F - G;
  192.     G = F1 + G;
  193.     Task13(n - 1, G, F);
  194. }
  195. int Task15(int k) {
  196.     if (k == 1)
  197.         return 1;
  198.     return 1 + Task15(k - 1);
  199. }
Add Comment
Please, Sign In to add comment