• 大小: 6.25M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-25
  • 语言: 其他
  • 标签: 其他  

资源简介

建模补课.rar

资源截图

代码片段和文件信息

// 数模.cpp : 定义控制台应用程序的入口点。
// 针对第二问分数调整的C程序
//详细算法在文章中描述

#include “stdafx.h“
#include “conio.h“
#include “math.h“
#define N 300

float average(int score[N][N]);
void pwaverage(int score[N][N]float pwave[]);
void pw_dx(int score[N][N]float pwdx[]float pwave[]);
float scoresum(int score[N][N]);
void printview(FILE *outfloat score_new[N][N]);
void solve(int score[N][N]float pwave[]float pwdx[]float averagefloat score_new[N][N]);

int _tmain(int argc _TCHAR* argv[])
{
FILE *in*out;
int iscore[N][N];
float avepwave[10]pwdx[10]score_sumscore_new[N][N];
    in=fopen(“d:\\data.txt““r“);
out=fopen(“d:\\score_new.txt““w“);
i=0;
    while(!feof(in)&&i<=200)
{   
fscanf(in“%d%d%d%d%d%d%d%d%d%d“&score[i][0]
&score[i][1]&score[i][2]&score[i][3]
&score[i][4]&score[i][5]&score[i][6]
&score[i][7]&score[i][8]&score[i][9]);
i++;
}
    ave=average(score);
    pwaverage(scorepwave);
pw_dx(scorepwdxpwave);
score_sum=scoresum(score);
    solve(scorepwavepwdxavescore_new);
printview(outscore_new);
}
float average(int score[N][N])/*求总数平均数*/
 {
 int ij;
 float sum=0ave;
 for(i=0;i<200;i++)
 for(j=0;j<10;j++)
      sum=sum+score[i][j];
     ave=sum/2000;
 return ave;
 }
 
void pwaverage(int score[N][N]float pwave[]) /*求每位评委的评分均值*/
 {
 int ij;
 float sum;
     for(i=0;i<10;i++)
 {   
 sum=0;
 for(j=0;j<200;j++)
 sum+=score[j][i];
 pwave[i]=sum/200;
 }
}

void pw_dx(int score[N][N]float pwdx[]float pwave[])/*求每一位评委的评分标准差*/
{
    int ij;float sum;
    for(i=0;i<10;i++)
{   
sum=0;
for(j=0;j<200;j++)
sum=sum+(score[j][i]-pwave[i])*(score[j][i]-pwave[i]);
pwdx[i]=sqrt(sum/199);
}
}

float scoresum(int score[N][N])
{
   int ij;
   float sum=0;
   for(i=0;i<200;i++)
   for(j=0;j<10;j++)
     sum+=score[i][j];
   return sum;
}

void solve(int score[N][N]float pwave[]float pwdx[]float averagefloat score_new[N][N])
/*根据模型,对分数进行调整*/
{
int ij;
for(i=0;i<10;i++)
for(j=0;j<200;j++)
{
score_new[j][i]=(score[j][i]-pwave[i])/pwdx[i];
score_new[j][i]=score_new[j][i]*10+average;
}
}

void printview(FILE *outfloat score_new[N][N])
{
int ij;
for(i=0;i<200;i++)
{
for(j=0;j<10;j++)
   fprintf(out“%f  “score_new[i][j]);
fprintf(out“\n“);
}
}

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

     文件    1145753  2009-03-21 11:01  数学建模简介.pdf

     文件    1485312  2009-05-25 16:06  2009年南京师范大学数学建模竞赛.doc

     文件     556544  2009-05-22 09:10  数学建模竞赛赛题.doc

     文件    5281332  2007-10-12 18:18  MATLAB 程序设计语言.pdf

     文件      25600  2009-07-02 15:57  如何写好数学建模竞赛论文.doc

     文件       2449  2009-05-25 10:46  数模.cpp

     文件     938515  2009-04-18 20:15  线性规划建模.pdf

     文件      92060  2009-03-21 18:17  population.pdf

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

              9527565                    8


评论

共有 条评论