Geradot345

лб2

Mar 2nd, 2021 (edited)
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1. #include <iostream>
  2. #include <Math.h>
  3. #include <iomanip>
  4. using namespace std;
  5.  
  6. void mnogoch()
  7. {
  8. int len;
  9. cout << "Введите количество членов:"<<endl;
  10. cin >> len;
  11. int* a = new int[len];
  12. int x, P;
  13. cout << "Введите X: \n";
  14. cin >> x;
  15. for (int i = 0; i < len; i++)
  16. {
  17. cout << "Введите a[" << i << "]: ";
  18. cin >> a[i];
  19. }
  20. P = a[0];
  21. for (int i = 1; i < len; i++)
  22. {
  23. P = P*x + a[i];
  24. cout << P<<endl;
  25. }
  26. cout << "Значение многочлена: " << P<<endl;
  27. }
  28.  
  29. void logar()
  30. {
  31. int n,m,k=1;
  32. double y,z,x,t,e,sum,u=1;
  33. cout << "Натуральный логарифм какого числа вы хотите посчитать?\n";
  34. cin >> x;
  35. cout << "Введите допустимую погрешность: ";
  36. cin >> e;
  37. m = -1;
  38. y = 0;
  39. while (x >= y) {
  40. m++;
  41. y = pow(2,m);
  42. }
  43. z = x / y;
  44. t = (1-z) / (1+z);
  45. sum = t;
  46. while (u >= 4 * e) {
  47. k += 2;
  48. sum += u;
  49. u = pow(t, k) / k;
  50. }
  51. sum--;
  52. double c= m * log(2) - 2 * sum;
  53. int o=0;
  54. e = 1 / e;
  55. int h = round(e);
  56. while (h != 0) {
  57. o++;
  58. h = h / 10;
  59. }
  60. cout << "Натуральный логарифм от " << x << "=";
  61. cout << setprecision(o) << c << endl;
  62. }
  63.  
  64. void sinus()
  65. {
  66. cout << "Синус какого числа вы хотите посчитать\n";
  67. float x,e,u,sum;
  68. int k=2;
  69. cin >> x;
  70. cout << "Введите допустимую погрешность: ";
  71. cin >> e;
  72. sum = x;
  73. u = x;
  74. while (abs(u) >= e) {
  75. u = -((x * x * u) / k / (k + 1));
  76. sum += u;
  77. k += 2;
  78. }
  79. sum -= u;
  80. int o = 0;
  81. e = 1 / e;
  82. int h = round(e);
  83. while (h != 1) {
  84. o++;
  85. h = h / 10;
  86. }
  87. cout << o<<endl;
  88. cout << "Синус от " << x << " = ";
  89. cout<<setprecision(o)<<sum << endl;
  90. }
  91.  
  92. int main()
  93. {
  94. setlocale(LC_ALL, "Russian");
  95. bool r = true;
  96. int o = 0;
  97. while (r == true){
  98. cout << "Меню:\n" << "1)Посчитать многочлен n-ой степени\n" << "2)Посчитать логарифмическую функцию\n" << "3)Посчитать синус\n" << "4)Закрыть\n";
  99. cin >> o;
  100. switch (o) {
  101. case 1:
  102. mnogoch();
  103. break;
  104. case 2:
  105. logar();
  106. break;
  107. case 3:
  108. sinus();
  109. break;
  110. case 4:
  111. r = false;
  112. break;
  113. }
  114. }
  115.  
  116. return 0;
  117. }
Add Comment
Please, Sign In to add comment