⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 自己做的小波与神经网络组合方法实现负荷预测程序
💻 CPP
📖 第 1 页 / 共 5 页
字号:
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp1_d3[i]);   //tmp1----29
   }
  fclose(fpc);
    
  day=day1-1;  //28
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp2_d3[i]);     //tmp2---28
   }
  fclose(fpd);
  
  day=day1-2;   //27
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp3_d3[i]);     //tmp3---27
   }
  fclose(fp);

  day=day1-3;   //26
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp4_d3[i]);     //tmp4_d3---26
   }
  fclose(fp);

  day=day1-7;   //22
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp5_d3[i]);     //tmp5---22
   }
  fclose(fp);
    

  day2=yucetian-7;  ////////训练样本二预测天为28 
  
  day=day2;  //28
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp6_d3[i]);   //tmp6----28
   }
  fclose(fpc);
    
  day=day2-1;  //27
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp7_d3[i]);     //tmp7---27
   }
  fclose(fpd);
  
  day=day2-2;   //26
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp8_d3[i]);     //tmp8---26
   }
  fclose(fp);

  day=day2-3;   //25
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp9_d3[i]);     //tmp9---25
   }
  fclose(fp);

  day=day2-7;   //21
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp10_d3[i]);     //tmp10---21
   }
  fclose(fp);
    
  
  day3=yucetian-3;  ////////训练样本三预测天为23   
  day=day3;  //23
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp11_d3[i]);   //tmp11----23
   }
  fclose(fpc);
    
  day=day3-1;  //22
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp12_d3[i]);     //tmp12---22
   }
  fclose(fpd);
  
  day=day3-2;   //21
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp13_d3[i]);     //tmp13---21
   }
  fclose(fp);

  day=day3-3;   //20
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp14_d3[i]);     //tmp14---20
   }
  fclose(fp);

  day=day3-7;   //16
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp15_d3[i]);     //tmp15---16
   }
  fclose(fp);
 
  
  day4=yucetian-2;  ////////训练样本四预测天为16
  
  day=day4;  //16
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp16_d3[i]);   //tmp16----16
   }
  fclose(fpc);
    
  day=day4-1;  //15
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp17_d3[i]);     //tmp17---15
   }
  fclose(fpd);
  
  day=day4-2;   //14
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp18_d3[i]);     //tmp18---14
   }
  fclose(fp);

  day=day4-3;   //13
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp19_d3[i]);     //tmp19---13
   }
  fclose(fp);

  day=day4-7;   //9
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp20_d3[i]);     //tmp20---9
   }
  fclose(fp);  

   
  day5=yucetian-1;  ////////训练样本五预测天为27
  
  day=day5;  //27
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp21_d3[i]);   //tmp21----27
   }
  fclose(fpc);
    
  day=day5-1;  //26
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp22_d3[i]);     //tmp22---26
   }
  fclose(fpd);
  
  day=day5-2;   //25
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp23_d3[i]);     //tmp23---25
   }
  fclose(fp);

  day=day5-3;   //24
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp24_d3[i]);     //tmp24---24
   }
  fclose(fp);

  day=day5-7;   //20
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp25_d3[i]);     //tmp25---20
   }
  fclose(fp);
  

  
  /////////////////////////////////教师样本
  day=yucetian-14;  ////////训练样本一预测天为29 
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)
   {
    fscanf(fpc,"%lf",&tmp26_d3[i]);   //tmp26----29
   }
  fclose(fpc); 
  
  
  day=yucetian-7;  ////////训练样本二预测天为28 
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)
   {
    fscanf(fpc,"%lf",&tmp27_d3[i]);   //tmp27----28
   }
  fclose(fpc);
  
  
  day=yucetian-3;  ////////训练样本三预测天为23 
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)
   {
    fscanf(fpc,"%lf",&tmp28_d3[i]);   //tmp28----23
   }
  fclose(fpc); 
 
  
  day=yucetian-2;  ////////训练样本四预测天为16
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)
   {
    fscanf(fpc,"%lf",&tmp29_d3[i]);   //tmp29----16
   }
  fclose(fpc); 

  
  day=yucetian-1;  ////////训练样本五预测天为27
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)
   {
    fscanf(fpc,"%lf",&tmp30_d3[i]);   //tmp30----27
   }
  fclose(fpc); 
 
 

  

  
             ////////////////////////////预测输入
   
  day=yucetian;  ////////30 
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpc=fopen(pday,"r"); 
  for(i=0;i<24;i++)                //96点的话要修改,这是24点
   {
    fscanf(fpc,"%lf",&tmp31_d3[i]);   //tmp31----30
   }
  fclose(fpc);
    
  day=yucetian-1;  //29
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  //cout<<pday<<endl;
  fpd=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fpd,"%lf",&tmp32_d3[i]);     //tmp32---29
   }
  fclose(fpd);
  
  day=yucetian-2;   //28
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp33_d3[i]);     //tmp33---28
   }
  fclose(fp);

  day=yucetian-3;   //27
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp34_d3[i]);     //tmp34---27
   }
  fclose(fp);

  day=yucetian-7;   //23
  pday="d3_day";
  strday.Format("%d",day);
  pday+=strday;
  pday+=".txt";
  fp=fopen(pday,"r");
  for(i=0;i<24;i++)
   {
    fscanf(fp,"%lf",&tmp35_d3[i]);     //tmp35---23
   }
  fclose(fp);  
     
  
  fpc=fopen("d3bpout.txt","w");
  fclose(fpc);
 }
 


  ///////////////////////////////
  ////////////////////////////////d3预测
void yuced3_1(int hour)
{  
  int i,j,k,l;
  for(i=0;i<1;i++)
    net_d3[i]=0.00001;
  //样本1
  l=1; 
  for(i=0;i<hour-1;i++)
   {
	net_d3[l]=tmp1_d3[hour-i-2];
    l++;
   }
  k=1;
  for(i=hour-1;i<24;i++)
   {
	net_d3[l]=tmp2_d3[24-k]; 
    l++;
	k++;
   }
    
  if((hour<12)||(hour==12))
   {
	for(i=25;i<=25;i++)
      net_d3[i]=tmp3_d3[12+hour-1];
   }
  if((hour>12&&hour<24)||(hour==24))
   {
      for(i=25;i<=25;i++) 
        net_d3[i]=tmp2_d3[hour-12-1];
   }
  
  if((hour<12)||(hour==12))
   {
    for(i=26;i<=26;i++)
      net_d3[i]=tmp4_d3[12+hour-1];
   }
  if((hour>12&&hour<24)||(hour==24))
   {
    for(i=26;i<=26;i++)
    net_d3[i]=tmp3_d3[hour-12-1];
   }

  for(i=27;i<=27;i++)
   net_d3[i]=tmp3_d3[hour-1];
  for(i=28;i<=28;i++)
    net_d3[i]=tmp5_d3[hour-1];
   

  //样本2
  l=29;
  for(i=0;i<hour-1;i++)
   {
	net_d3[l]=tmp6_d3[hour-i-2];
    l++;
   }
  k=1;
  for(i=hour-1;i<24;i++)
   {
	net_d3[l]=tmp7_d3[24-k]; 
    l++;
	k++;
   }
  
  if((hour<12)||(hour==12))
   {
	for(i=53;i<=53;i++)
     net_d3[i]=tmp8_d3[12+hour-1];
   }
  if((hour>12&&hour<24)||(hour==24))
   {
    for(i=53;i<=53;i++)
      net_d3[i]=tmp7_d3[hour-12-1];
   }

  if((hour<12)||(hour==12))
   {
     for(i=54;i<=54;i++)
	   net_d3[i]=tmp9_d3[12+hour-1];
   }
  if((hour>12&&hour<24)||(hour==24))
   {
    for(i=54;i<=54;i++)
     net_d3[i]=tmp8_d3[hour-12-1];
   }
  for(i=55;i<=55;i++)
   net_d3[

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -