Advertisement
Underhing

YAVU/LAB6/ZAD-6/v1.0

Dec 18th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.93 KB | None | 0 0
  1. /*
  2. Программа для решения
  3. задания № 6
  4. */
  5.  
  6. #include <stdio.h> // для printf
  7. int main()
  8. {
  9.  
  10. int i=0;
  11. double x, f, a, b, c, x_n, x_k, dx;
  12.  
  13. printf("Пожалуйста, введите значение числа A: ");
  14. scanf("%lf",&a);
  15. printf("Пожалуйста, введите значение числа B: ");
  16. scanf("%lf",&b);
  17. printf("Пожалуйста, введите значение числа C: ");
  18. scanf("%lf",&c);
  19.  
  20. do{
  21. printf("Пожалуйста, введите значение Xнач: ");
  22. scanf("%lf",&x_n);
  23. printf("Пожалуйста, введите значение Xкон: ");
  24. scanf("%lf",&x_k);
  25. if(x_n >= x_k){
  26.  
  27. printf("\033[1;31m[Ошибка]\033[0m Введите Xнач меньше Xкон ->\n");
  28.  
  29. }
  30. } while(x_n >= x_k);
  31.  
  32.  
  33.  
  34. do{
  35. printf("Введите шаг dX: ");
  36. scanf("%lf",&dx);
  37.  
  38. if(dx == 0){
  39.  
  40. printf("\033[1;31m[Ошибка]\033[0m Введите шаг dX больше нуля ->\n");
  41.  
  42. } else if(dx>(x_k - x_n)){
  43.  
  44. printf("\033[1;31m[Ошибка]\033[0m Введите шаг dX не превышающий размер интервала Xнач...Xкон ->\n");
  45. }
  46.  
  47. } while((x_n >= x_k)||(dx>(x_k - x_n)));
  48.  
  49.  
  50. if ((x<0) && (b!=0))
  51. {
  52.  
  53. printf("(1) ТАБЛИЦА ЗНАЧЕНИЙ ДЛЯ ФУНКЦИИ f= -a*x*x*x-b\n");
  54. for (double x = x_n; x <= x_k; x += dx)
  55. {
  56. f= -a*x*x*x - b;
  57. i++;
  58. printf("F(%d)= %f\n",i,f);
  59. }
  60. }
  61.  
  62. else
  63.  
  64. {
  65. if ((x>0) && (b==0))
  66. {
  67. if ((x-c)==0)
  68. {
  69. printf("(2 Формула) Знаменатель равен нулю\n");
  70. }
  71. else
  72. {
  73.  
  74. printf("(2) ТАБЛИЦА ЗНАЧЕНИЙ ДЛЯ ФУНКЦИИ f= ((x-a)/(x-c))\n");
  75. for (double x = x_n; x <= x_k; x += dx)
  76. {
  77. f= ((x-a)/(x-c));
  78. i++;
  79. printf("F(%d)= %f\n",i,f);
  80. }
  81.  
  82. }
  83. }
  84.  
  85. else
  86. {
  87. if ((c==0) && (x==0))
  88. {
  89. printf("(3 Формула) Знаменатель равен нулю\n");
  90. }
  91. else
  92. {
  93. printf("(3) ТАБЛИЦА ЗНАЧЕНИЙ ДЛЯ ФУНКЦИИ f= f= ((x/c) + (c/x))\n");
  94. for (double x = x_n; x <= x_k; x += dx)
  95. {
  96. f= ((x/c) + (c/x));
  97. i++;
  98. printf("F(%d)= %f\n",i,f);
  99. }
  100. }
  101. }
  102. }
  103.  
  104.  
  105. return 0;
  106.  
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement