Протабулировать заданную функцию y=f(x) ** промежутке [3.2, 3.9] с постоянным шагом...

0 голосов
81 просмотров

Протабулировать заданную функцию y=f(x) на промежутке [3.2, 3.9] с постоянным шагом h=0.1.
Функция y(x) имеет вид:
(x-1)^sin(x), если ctan(x) > - 0.1
(x+1)^sin(x), если ctan(x) <= - 0.1<br>
Помогите, пожалуйста, c написанием программки на С


Информатика (314 баллов) | 81 просмотров
0

#include #include #include /* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char *argv[]){ floata = 3.2, b = 3.9, x = a, y, h = 0.1;while (x <= b) {if (ctan(x) > -0.1) y = (x-1)^sin(x); elsey = (x+1)^sin(x);printf("\ny(%f) = %f", x, y); x += h;}system("PAUSE"); return 0;}

Дан 1 ответ
0 голосов
Правильный ответ

#include
#include
#include

int main(int argc, char *argv[]){
 float a = 3.2, b = 3.9, x = a, y, h = 0.1;
 while (x <= b){<br>   if (1.0/tan(x) > -0.1) y = pow((x-1),sin(x));
  else y = pow((x+1),sin(x));
  printf("y(%.2f) = %f\n", x, y);
  x += h;
 }
 return 0;


Результат:
y(3.20) = 0.955018
y(3.30) = 0.876878
y(3.40) = 0.799540
y(3.50) = 0.725119
y(3.60) = 0.655188
y(3.70) = 0.590810
y(3.80) = 0.532602
y(3.90) = 0.480816

(194k баллов)