C/C++

Требуется реализовать программное средство для решения функции

#include<stdio.h>
#include<math.h>
int main()
{
double x;
printf("Enter x: ");
scanf("%f",&x);
printf("%.4f",1/cos(x)+
sqrt(pow(sin(x),2)/(pow(x,2)-16)) );
system("pause");
return 0;
}
Набижанов Ильхомжон
Набижанов Ильхомжон
37 945
Лучший ответ
Функцию, что-ли, написа́ть? Чтобы максимально быстро работала? Тогда sin²x надо переписа́ть в соответствии с основным тригонометрическим тождеством sin²φ+cos²φ=1, а то две трансцендентные функции вместо одной единственной - это слишком накладно! В точках х, близких к ±4 и ½·π·(±1+4·k) (kєZ), а также в их непосредственной близости могут быть сюрпризы. А вот и весь полный исходник:
#include <cmath>
#include <iostream>
double f(double x) { double y = cos(x);
return 1. / y + sqrt((1. - y * y) / (4. - x * x)); }
int main(void) { double x; std::cout << "x » ";
std::cin >> x; std::cout << f(x) << std::endl; }
IS
Igor Savitsky
29 440
#include <. windows.h .>
#include <. string .>
#include <. iostream>
#include <. iomanip>
#include <. math.h>

using namespace std;

int main(int argc, char **argv)
{
system("chcp 1251 > nul"); // Руссификация сообщений
setlocale(LC_ALL, "Russian");

double x; cout << "Input now X= "; cin >> x;

double ImCool= 1.0 / cos(x) + sqrt(sin(x*x) / (x*x-16.0) );
cout << "Mister Teacher, ImCool= " << ImCool << end;

system("pause"); // system("pause > nul");
return 0;
}
Сурен Карапетян Проверка исключительной ситуации возложена на систему ибо при х = 4.0 возникает деление на 0
Сурен Карапетян лишнее там удали, а то препод обидится
Лучше используй средство у тебя в штанах, чтобы сделать себе приятно.