📄 head.h
字号:
#include"stdio.h"
#include"stdlib.h"
#include"math.h"
#include"conio.h"
/*----------------------宏定义------------------------------------*/
#define mMax 10 /*---最大矩阵行值---*/
#define nMax 10 /*---最大矩阵列值---*/
/*-----------------------全局变量---------------------------------*/
int m,n; /*---指标判断矩阵的行列值---------*/
int best,second; /*------最优和次优方案的数组下标索引----------*/
float f[mMax][nMax],H[nMax],Omiga[nMax];
/*---f[mMax][nMax]存放公式(2.3)的 因子,H[nMax]存放每个指标的熵,
Omiga[nMax]存放每个指标的熵权----*/
float r[mMax][nMax];/*--------指标判断矩阵----------*/
float A[mMax][nMax];/*--------加熵权的标准化指标矩阵-------*/
float X[nMax]; /*-------------理想点------------------*/
/*--------------目标属性-----------------*/
struct Target{
int ID; /*---目标标识符,用以识别该目标的唯一编号----*/
int x,y; /*---目标坐标----*/
float d; /*---方案距离----*/
int dIndex; /*---方案距离在各方案的距离中排序后的索引号----*/
float T; /*---方案贴近度----*/
int TIndex; /*---方案贴近度在各方案的距离中排序后的索引号----*/
int pIndex; /*---方案按贴近度和距离排序后的序号----*/
};
struct Target Tank[nMax]; /*---定义存放目标结构的数组---*/
/*--------------------在文件head.c中申明------------------------*/
float Sigama(float a[],int L);/*------------求和-------------*/
float findMax(float a[],int L);/*---------寻找最大值---------*/
float findMin(float a[],int L);/*---------寻找最小值---------*/
void Taxis(struct Target Tank[],int pNum);/*-------排序----*/
/*------------------算法步骤函数---------------------------*/
void FormMatrix(); /*构造初始指标判断矩阵*/
void FormEntropyMatrix(); /*构造加熵权的标准化指标矩阵A*/
void FindPerfectPoint(); /*找出理想点X[m]*/
void CalDistance(); /*计算被评方案到理想点的距离Tank[j].d*/
void CalCloseDegree(); /*计算被评方案与理想点的贴近度Tank[j].T*/
void FindBestT(); /*根据贴近度和距离排序,找出最优目标*/
void Arithmetic(); /*依次调用算法六个步骤*/
void ShowBest(); /*-------------显示最优目标------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -