📄 min_sec.cpp
字号:
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
class Item
{
public:
get_data();
double dX;
double dY;
};
//--------------------------------------------------------------------
class Experiment
{
public:
Experiment();
void calculator();
void display();
~Experiment();
private:
double A;
Item *Result;
int length;
};
//--------------------------------------------------------------------
Item :: get_data()
{
cout << "Please enter the experiment data." << endl;
cout << "Please enter the X:" << endl;
cin >> dX;
cout << "Please enter the Y." << endl;
cin >> dY;
}
//--------------------------------------------------------------------
Experiment :: Experiment()
{
cout << "请输入数据的组数,就是有多少组数据:" << endl;
cin >> length;
const int _number = length;
Result = new Item[_number];
//对子对象的赋值
for(int counter = 0; counter < _number; ++counter)
{
Result[counter].get_data();
}
}
//--------------------------------------------------------------------
//************以下是线性回归的模块*****************************//
void Experiment :: calculator()
{
const int _n = length;
double *X_1 = new double[_n];
double *Y_1 = new double[_n];
{
T_1[counter_1] = Result[counter_1].dT;
R_1[counter_1] = Result[counter_1].dR;
}
//以下是线性回归的实现
double middle_1 = 0;
double middle_2 = 0;
double middle_3 = 0;
double middle_5 = 0;
double number = double(_n);
for(int counter_2 = 0; counter_2 < number; ++counter_2)
{
middle_1 += (X_1[counter_2] / number);
middle_2 += (Y_1[counter_2] / number);
middle_3 += (X_1[counter_2] * Y_1[counter_2]) / number;
middle_5 += (X_1[counter_2] * X_1[counter_2]) / number;
}
double middle_4 = (middle_1 * middle_1);
double final_one = ((middle_1 * middle_2 - middle_3)
/ (middle_4 - middle_5));
A = final_one; //A表示斜率
delete [] X_1;
delete [] Y_1;
cout << "Calculator had been called." << endl;
}
//--------------------------------------------------------------------
void Experiment :: display()
{
cout << "The A which is resolved by this Experiment is :" << endl;
cout << "-----------------" <<endl;
cout << "-------" << setw(6) << A << "------" <<endl;
cout << "-----------------" <<endl;
}
//--------------------------------------------------------------------
Experiment ::~Experiment()
{
delete Result;
}
//--------------------------------------------------------------------
int main()
{
Experiment Careful;
Careful.calculator();
Careful.display();
return 0;
}
//--------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -