fork(1) download
  1. #include "iostream" // для cin и cout
  2. //#include "conio.h" // для getch
  3. #include "cmath" // для выполнения мат. вычислений
  4. //#include "locale.h" // для printf и setlocale
  5.  
  6. #define afirst -0.5
  7. #define asecond 1.9
  8. #define bfirst 1.5
  9.  
  10.  
  11. double fun(double x, double y, double t, double k) {
  12. if ((x<-3)||((x>0)&&(x<=1))||((x>5)&&(x<=10))||(x>=16)) return 0;
  13. if ((x>1)&&(x<2)&&(t>=1)&&(t<=3)) return (bfirst*t+exp(afirst*t*t))/x*afirst*sqrt(t+1.5); // 1 <= t <= 3, 1 < x < 2
  14. if ((x>=2)&&(x<=5)&&(y>=-1)&&(y<=1)) return (cbrt(asecond*(x*x)*(y*y)+1.3))*sin(x-asecond); // 2 <= x <= 5, -1 <= y <= 1
  15. if ((x>=-3)&&(x<=0)&&(k>1)) return ((pow(x, k)+pow(k, 4))); // -3 <= x <= 0, k>1
  16. if ((x>10)&&(x<16)) { // 10 < x < 16
  17. if (k>=1) return (2*(pow(x, k)+exp(-k*k)));
  18. else return x*(sin(k)*sin(k));
  19. }
  20. }
  21.  
  22.  
  23. int main() { // объявление переменных
  24. setlocale(LC_ALL, "Russian"); // вкл рус. яз.
  25.  
  26. double x,y,t,k; //вещественный с двойственной точностью
  27.  
  28. std::cout << "Введите x: "; // вывод на экран переменных
  29. std::cin >> x;
  30. std::cout << "Введите y: ";
  31. std::cin >> y;
  32. std::cout << "Введите t: ";
  33. std::cin >> t;
  34. std::cout << "Введите k: ";
  35. std::cin >> k;
  36.  
  37. std::cout << "f(" << x << ", " << y << ", " << t << ", " << k << ") ) = " << fun(x, y, t, k);
  38.  
  39. // getch(); // задержка экрана
  40. return 0;
  41. }
Success #stdin #stdout 0s 4492KB
stdin
Standard input is empty
stdout
Введите x: Введите y: Введите t: Введите k: f(-0.0125712, -0.01257, -3.62632e-41, -1.48424e-41) ) = nan