Advertisement
Guest User

Untitled

a guest
Feb 17th, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.88 KB | None | 0 0
  1. // ConsoleApplication3.cpp : Этот файл содержит функцию "main". Здесь начинается и заканчивается выполнение программы.
  2. //
  3.  
  4. #include <iostream>
  5. #include <cmath>
  6.  
  7. constexpr auto PI = 3.14159265;
  8.  
  9. //тут хуярим класс и вставляем туда функции и потом уже из класса все это вызываем
  10. double first(double a, double fi)
  11. {
  12. double k = a / (2 * PI);
  13. double p = k * fi;
  14. return p;
  15. }
  16. double second(double a, double fi_1, double fi_2)
  17. {
  18. double k = a / (2 * PI);
  19. double s = ((pow(fi_2, 3) - pow(fi_1, 3)) * k) / 6;
  20. return s;
  21. }
  22. double third(int n, double a)
  23. {
  24. double S_n = ((pow(n, 3) - pow((n - 1), 3)) / 3) * (PI * pow(a, 2));
  25. return S_n;
  26. }
  27. double fourth(int n, double a)
  28. {
  29. double S_1 = (PI * pow(a, 2)) / 3;
  30. double F_n = 6 * n * S_1;
  31. return F_n;
  32. }
  33. double fifth(double a, double fi)
  34. {
  35. double k = a / (2 * PI);
  36. double L = (k / 2) * (fi * sqrt(pow(fi, 2) + 1) + log(fi + sqrt(pow(fi, 2)-1)));
  37. return L;
  38. }
  39. double sixth(double a, double fi)
  40. {
  41. double k = a / (2 * PI);
  42. double powfi = pow(fi, 2)+1;
  43. double R = k * (pow(powfi, (3 / 2))) / (powfi + 2);
  44. return R;
  45. }
  46. int main()
  47. {
  48. setlocale(LC_ALL, "Russian");
  49. int input;
  50. //Запрашиваем шаг
  51. //Инициализируем класс и хуярим туда одну переменную а, где а у нас шаг.
  52. std::cout << "1)Для того чтобы вернуть расстояние до центра в полярной системе координат\n\
  53. в зависимости от угла для точки, принадлежащей спирали введите цифру 1\n\
  54. --------------------------------------------------------------\n";
  55. std::cout << "2)Для того чтобы вернуть площадь сектора получаемого между двумя заданными\n\
  56. полярными радиусами введите цифру 2\n\
  57. --------------------------------------------------------------\n";
  58. std::cout << "3)Для того чтобы вернуть площадь фигуры ограниченную n-ым витком спирали введите цифру 3\n\
  59. --------------------------------------------------------------\n";
  60. std::cout << "4)Для того чтобы вернуть площадь n-ого кольца спирали введите цифру 4\n\
  61. --------------------------------------------------------------\n";
  62. std::cout << "5)Для того чтобы вернуть длину дуги спирали до заданного угла полярного радиуса введите цифру 5\n\
  63. --------------------------------------------------------------\n";
  64. std::cout << "6)Для того чтобы вернуть радиус кривизны спирали в зависимости от угла полярного радиуса введите цифру 6\n\
  65. --------------------------------------------------------------\n";
  66. //зацикливаем свитчкейс пока пользователь не захочет самостоятельно выйти введя например ноль
  67. //так же убираем отсюда все а (шаги), т.к они у нас будут заданы в классе, а все это будет вызываться из класса.
  68. std::cin >> input;
  69. switch (input) {
  70. case 1:
  71. std::cout << "Введите шаг\n";
  72. double a;
  73. std::cin >> a;
  74. std::cout << "Введите угол\n";
  75. double fi;
  76. std::cin >> fi;
  77. std::cout << "Расстояние до центра = " << first(a, fi) << std::endl;
  78. break;
  79. case 2:
  80. std::cout << "Введите шаг\n";
  81. double a_2;
  82. std::cin >> a_2;
  83. std::cout << "Введите первый угол\n";
  84. double fi_21;
  85. std::cin >> fi_21;
  86. std::cout << "Введите второй угол\n";
  87. double fi_22;
  88. std::cin >> fi_22;
  89. std::cout << "Площадь сектора = " << second(a_2, fi_21,fi_22) << std::endl;
  90. break;
  91. case 3:
  92. std::cout << "Введите номер витка спирали\n";
  93. int n_3;
  94. std::cin >> n_3;
  95. std::cout << "Введите шаг\n";
  96. double a_3;
  97. std::cin >> a_3;
  98. std::cout << "Площадь фигуры ограниченная n-ым виктом спирали = " << third(n_3,a_3) << std::endl;
  99. break;
  100. case 4:
  101. std::cout << "Введите номер кольца спирали\n";
  102. int n_4;
  103. std::cin >> n_4;
  104. std::cout << "Введите шаг\n";
  105. double a_4;
  106. std::cin >> a_4;
  107. std::cout << "Площадь n-ого кольца спирали = " << fourth(n_4, a_4) << std::endl;
  108. break;
  109. case 5:
  110. std::cout << "Введите шаг\n";
  111. double a_5;
  112. std::cin >> a_5;
  113. std::cout << "Введите угол\n";
  114. double fi_5;
  115. std::cin >> fi_5;
  116. std::cout << "Длина дуги спирали до заданного угла = " << fifth(a_5, fi_5) << std::endl;
  117. break;
  118. case 6:
  119. std::cout << "Введите шаг\n";
  120. double a_6;
  121. std::cin >> a_6;
  122. std::cout << "Введите угол\n";
  123. double fi_6;
  124. std::cin >> fi_6;
  125. std::cout << "Радиус кривизны в зависимости от угла = " << sixth(a_6, fi_6) << std::endl;
  126. break;
  127. default:
  128. std::cout << "Ошибка, введите значения 1-6\n";
  129. break;
  130. }
  131. return 0;
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement