Неправильный результат вычисления функции - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Ребят помогите разобраться что я делаю не так. Нужно закодить обычную функцию я делаю так
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. int main()
  5. {
  6. float x0=1.; ; x_k=3;
  7. float n=10; h=(x_k-x0)/n;
  8. float x_t=x0;
  9. for(i=0;i<n;i++)
  10. {
  11. x_t = x_t+h;
  12. tst = -1/4+2/9*x_t+1/36*x_t*x_t*x_t*x_t-x_t/3*(log(x_t));
  13. printf(" y(test) = %f",tst);
  14. }
  15. }
почему она считается неправильно?

Решение задачи: «Неправильный результат вычисления функции»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. int main()
  5. {
  6.  float x0,x_k,h,x_t,tst;
  7.  int n,i;
  8.  
  9.   x0=1.; x_k=3;
  10.  n=10; h=(x_k-x0)/n;
  11. x_t=x0;
  12.    
  13.     for(i=0;i<n;i++)
  14.     {
  15.  
  16.         x_t = x_t+h;
  17.         tst = -1/4+2/9*x_t+1/36*x_t*x_t*x_t*x_t-x_t/3*(log(x_t));
  18.         printf("y(test) = %f\n",tst);
  19.  
  20.     }
  21. }

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с плавающей точкой и целочисленными значениями.
  2. Объявление переменных: x0, x_k, h, x_t, tst;
  3. Инициализация переменных: x0=1., x_k=3., n=10;
  4. Вычисление шага h=(x_k-x0)/n;
  5. Начальное значение переменной x_t=x0;
  6. Цикл for для вычисления функции на заданном отрезке от x0 до x_k с шагом h;
  7. Вычисление значения переменной x_t=x_t+h;
  8. Вычисление значения переменной tst на основе математической формулы -1/4+2/9x_t+1/36x_tx_tx_tx_t-x_t/3(log(x_t));
  9. Вывод значения переменной tst на экран с помощью функции printf.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут