Top.Mail.Ru
Ответы

Программирование с++. Помогите написать алгоритм для данной задачи используя только условия и циклы

1. Четность функции. Численно убедиться, является ли заданная функция четной, общей или нечетной на заданном отрезке . Учесть погрешность вычислений и возможные точки разрыва функции. Проверить, например, для функций y = x^4, y=tg(x), y =e^x вычисляя их на отрезке [-5;5] с шагом 0.1.

По дате
По рейтингу
Аватар пользователя
Новичок
9мес
123456789101112131415
 bool is_odd = true, is_even = true; 
for (int i = 0; i <= 50; ++i) {
  double x = i / 10.0;
  double y1 = tan(x), y2 = tan(-x);
  if (isnan(y1) || isnan(y2) || isinf(y1) || isinf(y2)) { continue; }
  is_odd &= abs(y1 + y2) < 1.0e-8;
  is_even &= abs(y1 - y2) < 1.0e-8;
}
if (is_odd) {
  cout << "нечётная";
} else if (is_even) {
  cout << "чётная";
} else {
  cout << "общая";
} 

Для двух других функций:

1
 double y1 = pow(x, 4), y2 = pow(-x, 4); 
1
 double y1 = exp(x), y2 = exp(-x);