[a,b] с шагом h, на языке программирования С++ в среде разработки MVS2010, в консоли.Как уже было сказано ранее, не обязательно использовать IDE, указанную в задании. Пользуйтесь той, которая удобнее вам. Для решения данной задачи вам потребуются цикл for, кстати необязательно for, можете воспользоваться любым другим. И математические функции для нахождения котангенса. Знайте, в С++ нет отдельной функции для вычисления котангенса, но его можно вычислить, воспользовавшись функциями синуса и косинуса. В качестве примера, результат работы программы показан ниже:
// tabulation_function.cpp: определяет точку входа для консольного приложения.
#include "stdafx.h"
#include <iostream>
// заголовочный файл содержит прототипы математических функций
#include <cmath>
// заголовочный файл содержит прототипы манипуляторов вывода
#include <iomanip>
using namespace std;
int main(int argc, char* argv[])
{
float h = 0.1, // шаг табулирования
a = 5.0 / 100, // левая граница интервала
b = a + 0.5; // правая граница интервала
cout << "y = ";
for ( a; a <= b; a+=0.1) // цикл табулирования функции
{
cout << setprecision(3/*три знака после запятой*/)
<< pow(cos(log(a)) / sin(log(a)/*ctg(x)=cos(x)/sin(x)*/), 2) << "; "; // запрограммированная формула
}
cout << endl;
system("pause");
return 0;
}
Программу можно легко переделать и под другие функции, можно менять шаг табуляции, а также левую и правую границы интервала. Пример работы программы:
y = 46.3; 0.115; 0.0348; 0.329; 0.949; 2.16;
Комментарии
odto11
Через класс переписал =)
#include <iostream> #include <iomanip> #include <cmath> using namespace std; class Ctg{ float h = 0.1, a = 5.0/100, b = a + 0.5; public: void get_ctg() { cout << "y = "; for (a; a <= b; a+=0.1) { cout <<setprecision(3) << pow(cos(log(a)) / sin(log(a)), 2) << "; "; } } } cotangent; int main() { cout << "\t\tПрограмма табулирования функции котангенса\n"; cotangent.get_ctg(); return 0; }Graf_Men9999
а ещё есть тангенс.. а котангенс это перевернутый тангенс.. (ctg(x) = 1 / tg(x))
colt
int _tmain(int argc, _TCHAR* argv[]) { SetConsoleCP(1251); SetConsoleOutputCP(1251); cout.flags(ios::fixed); cout.precision(3); while(true) { system("CLS"); dMin=5.0/100; dMax=dMin+0.5; dStep=0.1; cout<<"y = "; dX=dMin; do { dY=ctan(log(dX)); dY*=dY; cout<<dY<<"; "; dX+=dStep; } while(dX<dMax); cout<<"\n\n"; system("PAUSE"); } return 0; }colt
#include "stdafx.h" #include "iostream" #include "windows.h" #include "cmath" using namespace std; double dMin, dMax, dStep, dX, dY; double ctan(double var) { return 1.0/tan(var); }gro
Пропустил преобразование: return pow(1/(tan(log(x)*M_PI/180)),2);
#define M_PI 3.14159265
gro
#include <iostream> #include <cmath> using namespace std; double F(double x) { return pow(1/(tan(log(x))),2); } int main() { setlocale(LC_ALL,"rus"); double a=0, b=0, h=0; while (a<=0) { cout << "\nВведите начальную точку изменения аргумента a>0: "; cin >> a; } while (b<=a) { cout << "\nВведите конечную точку изменения аргумента b>a>0: "; cin >> b; } while (h<=0) { cout << "\nВведите шаг изменения аргумента h>0: "; cin >> h; } double x=a; for (double i=a; i<=b; i=i+h) { cout << "\nФункция F(" << x << ") = " << F(x) << endl; x=x+h; } return 0; }Boss
#include <iostream> #include <windows.h> #include <cmath> using namespace std; int main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); float a(0), b(0), h(0); float const PI(3.141592); cout << "Calculating the value for ctg(x)^2 * ln(x) at interval [a, b] with step h\n"; do { cout << "Enter a:"; cin >> a; cout << "\nEnter b:"; cin >> b; cout << "\nEnter the step (h):"; cin >> h; cout << "a = " << a << " b = " << b << " h = " << h << endl; if (h <= 0 || a >= b || a <= 0 || b <= 0) cout << "Incorrect value. let's try again!\n\n"; } while (h <= 0 || a >= b || a <= 0 || b <= 0); for (float i = a; i <= b; i += h) { cout << "x = " << i << "; calculating value is: "; cout << pow(cos(log(i)) / sin(log(i)), 2) << endl; } return 0; }