• 大小: 9KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: 其他
  • 标签: 拟合  

资源简介

很好用的最小二乘法直线拟合代码 可运行 VC平台

资源截图

代码片段和文件信息

// 11.cpp : Defines the entry point for the console application.
//

#include “stdafx.h“
#include
#include
#include

//最小二乘法数据处理程序
void main ()
  {
  int niflag2;
  char flag1=‘y‘;
  float ar[50]br[50]xyxeyexyexxesxsysxysxxab;
  printf (“\n*********************************************************\n“);
  printf (“\n欢迎使用最小二乘法数据处理程序\n“);
  printf (“\n说明:本程序运行结果保留小数点后三位\n“);
  for (;flag1==‘y‘||flag1==‘Y‘;)
  {
  printf (“\n请输入您要处理的数据的组数:“);
  printf (“\n*****提示:本程序定义一对xy值为一组数据:“);
  scanf (“%d“&n);
  if (n>50)
  {
  printf (“\n对不起,本程序暂时无法处理50组以上的数据“);
  continue;
  }
  printf (“\n请选择您的数据的处理方式:“);
  printf (“\n\t1.y与x为一次线性关系“);
  printf (“\n\t2.y与x的2次为线性关系\n“);
  scanf(“%d“&flag2);
  if (flag2>2||flag2<1) 
  {
  printf (“\n对不起,您的输入不正确\n“);
  continue;
  }
  for (i=0;i  {
  printf (“\n请输入第%2d个x的值\tx%2d=“i+1i+1);
  scanf(“%f“&ar[i]);
  printf(“\n请输入对应的y的值:\ty%2d=“i+1);
  scanf(“ %f“&br[i]);
  }
  if (flag2!=1)
  {
 for (i=0;i     br[i]=br[i]/(ar[i]*ar[i]);   
  }
     sx=sy=sxx=sxy=0;//初值
     for (i=0;i  {
 sx=sx+ar[i];          //x和
     sy=sy+br[i];          //y和
     sxx=sxx+ar[i]*ar[i];  //x平方和
     sxy=sxy+ar[i]*br[i];  //xy和 
 }
     xe=sx/n;              // xe为所输数值x的平均数
     ye=sy/n;              //ye为所输数值y的平均数
 xye=sxy/n;            //xy和的平均数
     xxe=sxx/n;            //x平方和平均数
       
 b=(xye-xe*ye)/(xxe-xe*xe);
 //xye为
     a=ye-b*xe;
 //ye为所输数值y的平均内数   xe为所输数值x的平均内数
     printf (“\n对您输入的数据的处理已经完成,结果如下:“);
     printf (“\n\ta=%8.3f\n\tb=%8.3f\n“ab);
     printf (“\nb即为拟合直线的斜率,a为截距\n“);
     printf (“\n*********************************************************\n“);
     printf (“\n是否继续使用本程序处理数据?(y/n)?“);
     scanf (“ %c“&flag1);
     if (flag1==‘y‘||flag1==‘Y‘) continue;
     else if (flag1==‘n‘||flag1==‘N‘) break;
     else {printf (“\n***操作非法,本程序将关闭***\n“);
     exit(0);
 }
 printf (“\n*********************************************\n\n“);
  }
     printf (“\n谢谢您的使用\n欢迎提出宝贵意见\n“);
     exit (0);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      48640  2004-10-21 15:03  最小二乘法程序\11.opt

     文件       4488  2004-10-06 12:47  最小二乘法程序\11.dsp

     文件        527  2004-10-06 12:47  最小二乘法程序\11.dsw

     文件      50176  2004-10-21 15:03  最小二乘法程序\11.ncb

     文件       2380  2004-10-15 17:59  最小二乘法程序\11.cpp

     文件       1362  2004-10-13 10:04  最小二乘法程序\11.plg

     文件       1184  2004-10-06 12:47  最小二乘法程序\ReadMe.txt

     文件        289  2004-10-06 12:47  最小二乘法程序\StdAfx.cpp

     文件        769  2004-10-06 12:47  最小二乘法程序\StdAfx.h

     目录          0  2004-10-08 08:26  最小二乘法程序\Debug

     目录          0  2004-10-08 08:26  最小二乘法程序

----------- ---------  ---------- -----  ----

               110033                    12


评论

共有 条评论