Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

С++ написать прогу с комментариями

Михаил Фибих Ученик (117), открыт 4 недели назад
Привет, друг! Помоги плиз выполнить задание по С++, если ты шаришь за этот язык. Задание: Написать программу на языке С++ для расчета значений переменных y и z
по формулам, согласно варианту задания. При этом использовать для ввода операторы потокового ввода-вывода cin и cout. Вычислить разность между значениями
y и z. Ввод исходных данных должен осуществляться с помощью клавиатуры.

И сделайте проверку сразу, чтобы всё правильно было: Для контроля корректности работы программы вычислите значения y и
z с помощью калькулятора и убедитесь, что они совпадают с результатами, по
лученными в программе.

Огромное спасибо заранее!
1 ответ
Ксения Райт Гений (97193) 4 недели назад
sin²(2α) = 4·sin²(α)·cos²(α)
cos(2α) = cos²(α)-sin²(α) = 2·cos²(α)-1
y = 1-sin²(α)cos²(α)+2·cos²(α)-1 =
cos²(α)·[2-sin²(α)] = cos²(α)·[1+cos²(α)]
z = cos²(α)·[1+cos²(α)]
y - z = 0
Проверяем (y и z вычисляются
строго по указанным формулам !):
 #include <cmath>
#include <iostream>

using namespace std;

int main()
{
double α, y, z
cout << "α: ";
cin >> α;
y = 1-0.25*pow(sin(2*α),2)+cos(2*α);
z = pow(cos(α),2)+pow(cos(α),4);
cout << "y=" << y << ", z=" << z
<< ", y-z=" << y - z << endl;
return 0;
}
Значения y и z, естественно, получаются или одинаковые или почти одинаковые, так что разность у-z получается где-то порядка машинной точности для чисел типа double.
Похожие вопросы