c++一元一次回归方程
更新时间:2024-03-12 11:55:01 阅读量: 综合文库 文档下载
一元一次回归方程
C++程序
#include
void input(int[],int); //声明所有的函数 void output(int t[],int,double,double); double _mx(int); double _my(int t[],int);
double _b(int t[],int,double,double); double _a(double,double,double); double jieguo(double,double,int);
double _cor(int [],int,double,double); void main() {
int t[10],n=10; //t[]存放数据,n表示长度,总长为10
double a,b,mx,my; //a和b为方程系数, mx为Xi的平均值 my为Yi平均值
input(t,n); //调用输入函数
mx=_mx(n); //给mx赋值 以下同理
my=_my(t,n);
b=_b(t,n,mx,my); a=_a(mx,my,b);
output(t,n,a,b); //调用输出函数
cout<<\并以此预测x=20时 y= :\
double cor=_cor(t,n,mx,my); //调用_cor函数 cout<<\通过计算相关系数cor得出 :cor=\
if(cor==0)
cout<<\这条直线完全没有用处\ if(cor==1)
cout<<\这条直线完全符合实际情况\ if(cor>0.81)
cout<<\这条直线就很好了\ }
void input(int t[],int n) //输入函数 {
cout<<\请按以下格式输入样本数据------------------------\
cout<<\ for(int i=0;i { else cout<<\这条直线不和实际\ cout<<\ cin>>t[i]; cout< void output(int t[],int n,double a,double b) //输出函数 { double sum1=0,sum2=0,sum3=0,d,e,f; for(int i=0;i sum1+=t[i]; } d=sum1/n; //求y的平均值 for(i=0;i sum2+=(t[i]-d)*(t[i]-d); e=sqrt(sum2/n); for(i=1;i<=n;i++) //求x的平均值 sum3+=i; f=sum3/n; cout<<\整理分析数据---------------------------------\ } double _mx(int n) //求xi的平均值 { int i,sum=0; } double _my(int t[],int n) //求yi的平均值 { int i,sum=0; for(i=0;i sum+=t[i]; //sum为Yi项的和 for(i=1;i<=n;i++) sum+=i; //sum为xi项的和 cout<<\对以上数据进行分析得 :\\n\ cout<<\的平均值为 :\为y平均 cout<<\其均方差为 :\为y的均方差 cout<<\回归方程式为 : y=\cout<<\的平均值为:\ return sum/n; //返回平均值 return sum/n; //返回平均值 } double _b(int t[],int n,double mx,double my) //求方程系数b { double fenzi=0,xfangcha=0; for(int i=1;i<=n;i++) { fenzi+=(i-mx)*(t[i-1]-my); xfangcha+=(i-mx)*(i-mx); // X样本方差公式 } return fenzi/xfangcha; //返回b值 } double _a(double mx,double my,double b) //求方程的系数a { } double jieguo(double a,double b,int x)//求回归方程 { return a+b*x; //方程为 y=a+bx } double _cor(int t[],int n,double mx,double my) //编写函数测试相关系数cor { double a1=0,b1=0,c1=0; for(int i=1;i<=n;i++) { a1+=(i-mx)*(t[i-1]-my); return my-b*mx; //返回系数a b1+=(i-mx)*(i-mx); c1+=(t[i-1]-my)*(t[i-1]-my); } a1=a1/n; b1=sqrt(b1/n); c1=sqrt(c1/n); } double cor=a1/(b1*c1); return cor; //返回double型的cor值
正在阅读:
c++一元一次回归方程03-12
保健品的目标客户02-12
六年级下册英语教案-Unit At the Sports Meeting Part A - 陕旅05-20
《卓越现场4P管理体系》答案12-03
春天的故事作文:寻找春天的故事06-07
个人原因离职申请书(集合15篇)03-31
IDE模式装系统之后修改AHCI方法04-14
竖造择日法11-14
天津大学网络教育 网上作业 工程制图基础03-08
- 2019年学校党委宣传部年终工作总结范文
- 2017超吸引人的招聘销售人员广告语与2017超市寒假社会实践报告合
- 精编完整版港国际学校项目可研报告
- 工程测量测绘工作室建设方案
- 上海市工业废气排放试行标准
- 宝马4S店物业管理方案
- 投资咨询师继续教育考试-水文地质学概论试卷-100分
- 传媒的公共性与中国传媒改革的再起步
- 江苏省靖江市第三中学2015届九年级中考二模物理试题
- 铜厂坡煤矿2013顶板灾害防治措施
- 实验室八大计划
- 陕西省2017年上半年保险公估人考试题
- BMI体重标准 - 图文
- 苏教版四年级下学期数学复习资料
- 人行道砖铺装施工技术交底
- 黑龙江省鸡西市高三5月考前模拟文综历史试题
- 2013年安徽高考文科数学试卷
- 柳叶湖规划 Microsoft Word 文档
- 本科毕业设计论文--金融营销北京银行客户关系管理研究
- 甲醛滴定法测定溶液中的氨基酸含量