2016年吉林省大学生数学建模竞赛
承诺书
我们仔细阅读了《全国大学生数学建模竞赛章程》和《全国大学生数学建模竞赛参赛规则》(以下简称为“竞赛章程和参赛规则”,可从全国大学生数学建模竞赛网站下载)。
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛
有关的问题。
我们知道,抄袭别人的成果是违反竞赛章程和参赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛章程和参赛规则,以保证竞赛的公正、公平性。如有违反竞赛章程和参赛规则的行为,我们将受到严肃处理。
我们授权全国大学生数学建模竞赛组委会,可将我们的
以任何形式进行公开展示(包括进行网上公示,在书籍、期刊和其他媒体进行正式或非正式发表等)。
我们参赛选择的题号是(从A/B/C/D/E中选择一项填写):E
我们的报名参赛队号为(8位数字组成的编号):07016018
所属学校(请填写完整的全名):吉林工程技术师范学院
参赛队员 (打印并签名) :1.许凌晨
2.斯恩德
3.阿勇嘎
指导教师或指导教师组负责人 (打印并签名):李长春
(论文纸质版与电子版中的以上信息必须一致,只是电子版中无需签名。以上内容请仔细核对,提交后将不再允许做任何修改。如填写错误,论文可能被取消评奖资格。)
日期:2016 年 05 月 04 日
赛区评阅编号(由赛区组委会评阅前进行编号):
2016年吉林省大学生数学建模竞赛
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
4S店的
及奖励政策
摘要
4S店是一种集整车销售、零配件、售后服务、信息反馈四位一体的汽车销售企业,它为汽车企业树立品牌知名度,在一定程度上代表了汽车品牌文化,因此,客户对4S店的评价直接影响汽车企业品牌在客户心目中的地位。如何制定合理的奖励政策以提高4S店的服务水平,是提高汽车企业效益的关键。
不管什么样的奖励政策,都需要给出各个店的排名。本题所给的附件中有三种不同数据,一种是10分制得分,一种是举报数量,还有一种是百分比。数据类型的不同给评比带来了一定的困难,因此本文制定若干评分准则,利用C语言编程将所有的数据全部转化成10分制得分。得到统一的数据类型后,我们就可以计算各个指标所占权重。本文利用层次分析法中构造判断矩阵的方法计算权重,首先将所有的指标的重要程度两两比较,将重要程度的大小量化,构造出判断矩阵。为了避免出现A比B重要,B比C重要,却又出现C比A重要的矛盾,本文对判断矩阵进行了一致性检验。一致性检验公式为:
,当
时,矩阵通过一致性检验,由此矩阵计算出的权重是合理的,否则,需要重新构造判断矩阵。矩阵通过一致性检验后,本文采用几何平均法,用C语言计算权重:
,
为所求指标权重,然后加权平均得到所有4S店每季度以及全年的综合得分,最后用Excel排名。
在制定奖励政策方面,我们考虑到评比周期的长短会影响各4S店的积极性,周期过长会导致各店积极性不高,周期过短又会使各店存在不在乎现象,因此我们提出按月度评比奖项,并保留年终奖的奖励政策。同时适当加大各等级奖金之间的差异,以提高各个店之间的竞争程度。
此外,我们还考虑到有些4S店在某些方面变现很突出,但另一方面得分低,使得综合得分排名靠后,得不到奖项,积极性会受到打击。为此,本文在第1、2题的基础上,设立专项奖金,对那些“销售之星”或者顾客回头率高的4S店给予专项奖励,能够大大提高他们的积极性,为企业带来更大效益。
关键词 统一标准 判断矩阵 一致性检验 权重
一、问题重述
4S店的全称为汽车销售服务4S店(Automobile Sales Servicshop 4S),是一种集整车销售(Sale)、零配件(Sparepart)、售后服务(Service)、信息反馈(Survey)四位于一体的汽车销售企业,是汽车厂家为了满足客户在服务方面的需求而推出的一种业务模式,这几年在国内发展极为迅速。
4S店可以提供装备精良、整洁干净的维修区,现代化的设备和服务管理,高度职业化的气氛,保养良好的服务设施,充足的零配件供应,迅速及时地跟踪服务体系。通过4S店的服务,可以使用户对品牌产生信赖感,从而扩大销售量。
然而,由于汽车4S店在管理中存在的诸多问题,影响到其规模的发展及企业利润的增加。为了加强对4S店的管理,提升服务质量,扩大市场份额,众多汽车企业对其4S店进行各种评比及管理绩效评价,并通过奖励政策激励4S店提高管理水平,提升品牌形象。
国内某大型汽车企业
从年初开始,对其所属4S店进行季度和年度评比奖励,首先选择了55个经营规模、效益、品牌相近的4S店开始试行。评比指标包括以下14项:
1.电话接待服务;
2.店内接待服务;
3.客户维护;
4.员工面貌;
5.店内环境;
6.店内服务设施;
7.户外环境;
8.户外设施;
9.诚信运营(有效举报数量);
10.客户回头率(到店客户中老客户占的百分比);
11.维修量完成率(实际维修数量与计划维修数量之比);
12.返修率(返修数量与实际维修数量之比);
13.销售量完成率(实际销售量与计划销售量之比);
14.利润完成率(实际利润额与计划利润额之比)。
其中,1—9项按照10分制由客户、企业、相关专家等打分综合得到。
评比奖励
分季度和年度评比奖励:
1.季度评比奖励方案
根据4S店每个季度各项指标的综合得分情况进行评比,具体规则如下:
综合得分名次
奖励金额(万元/店)
第1—3名
5
第4—6名
3
第7—10名
2
2.年度评比奖励方案
综合考虑4S店全年各项指标综合得分以及季度评比排名情况进行评比,具体规则如下:
年度评比名次
奖励金额(万元/店)
第1—3名
15
第4—6名
12
第7—10名
8
附件中给出了55家4S店1—12月份14个指标的数据,请完成以下问题。
问题1:
1)根据附件的数据,选用适当的方法进行综合评比,并给出55家4S店每个季度以及年度评比结果;
2)定量分析实施奖励政策后各项考核指标的变化情况以及带来的整体效果。
问题2:现有奖励总金额不变,作为对现有奖励方案的改进及补充,制定不少于两种对4S店的评比奖励方案,并论证这些方案的合理性;同时利用附件的数据,给出55家4S店的具体评比结果。
问题3:企业决定再增加40万元奖励资金,用来设立专项奖励,目的是充分发掘潜能,调动各家4S店的积极性。
1)请为该企业制定专项奖励政策,并论证其合理性;
2)利用附件所给的数据,给出55家4S店评比结果以及具体奖金分配方案;
3)对于评比排名在后20%的4S店,指出存在的问题,并给出改进建议。
问题4:为了提升4S店的管理水平,提高企业经济和社会效益,给这家汽车企业提出奖励政策的建议。
1)说明企业应该制定哪些奖励政策,以期兼顾企业、4S店和客户的三者利益。奖励政策中要至少有一种不同于问题1—问题3所设立的奖项,并论证其合理性;
2)对于新设立的奖励政策,利用附件的数据测算评比结果。
二、问题分析
附件中给出了55个4S店14个评比指标的每个月的数据,附件1至附件8中的数据是按照10分制给出的得分,附件9是有效举报数量,附件10至附件14是各项指标的百分比。我们只要能够建立模型把14个指标统一成一个标准,就能比较方便得分析各个4S店的排名情况,进而制定合理的奖励政策,
问题1:
1)得出统一的评判标准后,我们需要计算出每个指标所占权重,然后得出每个4S店在每个季度以及年度综合得分,按照得分进行排名;
2)此问题要求我们分析实施奖励政策以后各项指标的变化情况,因此我们可以把55个4S店看作一个总体,分析这个总体的指标在每一个月的变化情况。
问题2:
评比周期的长短影响各4S店的积极性,周期过长会导致各店积极性的衰减,周期过短又会使各个店抱有不在乎的心理现象的出现。各个等级的奖金一定要体现出差异性,否则竞争的激烈性会降低。
我们可以在原方案的基础上,缩短评比周期,增加评比次数。为突出显示前三名奖励差异,可以对各个名次奖金的分配进行调整。
问题3:
有些厂家在某些方面可能得分很高,但由于在另一方面得分低,导致综合得分落后,得不到奖项,势必会打消店家积极性,因此制定合理的专项奖就显得尤为重要。
对此,我们可以将所有指标进行分类,对每类指标设置专项奖,使得在某一方面突出但综合排名靠后的4S店也能得到奖金,提高各店的积极性。
问题4:
客户对4S店的评价直接影响了客户对汽车企业品牌的信任度。因此,4S店服务质量的高低对客户的满意程度以及汽车企业在公众中的口碑至关重要。为了促进4S店提高服务水平,我们可以建议企业再拿出一部分钱设立一种奖项,进一步激励4S店做好工作。
三、符号说明
A:电话接待服务情况
B:店内接待服务情况
C:客户维护情况
D:员工面貌情况
E:店内环境情况
F:店内服务设施情况
G:户外环境情况
H:户外设施情况
I:有效举报数量
J:客户回头率
K:维修量完成率
L:返修率
M:销售量完成率
N:利润完成率
A*、O、P、S、R:判断矩阵
:特征值
n:矩阵维度
CI:一致性指标
RI:平均随机一致性指标
CR:随机一致性比率
:14个指标的权重
四、模型的建立与求解
建立模型:
问题1:
1)给出55家4S店每个季度以及年度评比结果
统一指标
首先,我们将所有附件中的指标数据统一成10分制得分。由于附件1至附件8的指标数据是10分制得分,所以我们只需将附件9至附件14的指标数据进行转化。
我们制定评分细则如表1所示:
表1
附件9~附件14评分细则
附件9
举报数量
0
1
2~4
5~9
10~20
>20
得分
10
9
8
7
6
5
附件10
顾客回头率(%)
90.00~100.00
80.00~89.99
70.00~79.99
60.00~69.99
50.00~59.99
40.00~49.99
得分
10
9
8
7
6
5
附件11
维修量完成率(%)
>100.00
90.00~99.99
80.00~89.99
70.00~79.99
60.00~69.99
50.00~59.99
得分
10
9
8
7
6
5
附件12
返修率(%)
1.00
1.01~1.99
2.00
2.99
……
>10.00
得分
10
9
8
7
……
0
附件13
(附件14)
销售量(利润)完成率(%)
>=110.00
100.00~109.99
90.00~99.99
80.00~89.99
……
40.00~49.99
得分
10
9
8
7
……
3
然后根据如上规则利用C语言编程(见附录1),得出附件9~附件14的得分表(见附件1. 9~14得分表),这样我们就得到了所有指标的10分制得分数据(见附件2. 1~14得分表)。
计算权重
接下来构造判断矩阵确定各个指标的权重(为了便于书写,我们将1~14个指标依次用A~N表示):
a. 构造判断矩阵
对各指标之间进行两两对比,然后确定各评价指标的相对优劣顺序,依次构造出评价指标的判断矩阵
,其中
元素
为指标i和指标j的重要性比较结果,且
,
的值参考表2
表2
指标i比指标j
一样重要
稍微重要
重要
很重要
非常重要
两相邻判断的中间值
量化值
1
3
5
7
9
2,4,6,8
依据以上理论,我们构造出两两指标重要性之比的表:
进而构造出14个指标的判断矩阵:
b. 一致性检验
为了检验各指标之间重要性的协调度,避免出现A比B重要,B比C重要,但又出现C比A重要的矛盾,我们需要对判断矩阵进行一致性检验。
一致性检验公式:
,其中
为随机一致性比率,当
时,我们认为矩阵具有满意的一致性,各指标之间的重要性具有良好的协调度,当
时,我们认为矩阵没有通过一致性检验,需要重新构造判断矩阵;
为一致性指标,计算公式为
,其中
为判断矩阵的最大特征值,
为判断矩阵的维度;
为平均随机一致性指标,可以查表求得
RI值
阶数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
RI值
0
0
0.52
0.89
1.12
1.26
1.36
1.41
1.46
0.49
0.52
1.54
1.56
1.58
1.59
我们用Matlab编程(见附录2)求出矩阵的最大特征值
矩阵维度
=14,通过查表求得
=1.58,则
,因此我们构造的判断矩阵具有满意的一致性,由此矩阵计算出的各指标的权重是合理的。
c. 计算权重
我们选用几何平均法,计算各指标的权重:
计算
每行各个元素的乘积,得到一个新的矩阵
计算
中每个元素的
次方根,得到矩阵
对
进行归一化处理,得到矩阵
, 其中
就是所求权重向量。
在这里,我们根据如上理论用C语言编程(见附录1)得出所有指标的权重
计算综合得分并排名
以店家1在一季度的得分为例,我们先计算出店家1在一季度每个月的各个指标的平均得分
、
、
、
、
、
、
、
、
、
、
、
、
、
,所有指标的权重分别为
、
、
、
、
、
、
、
、
、
、
、
、
、
,则店家1在一季度的综合得分为
。以此类推,可以得到55家4S店在每个季度以及全年的综合得分,依据综合得分进行排名。
我们用C语言编程(见附录1)计算出每家店在各季度以及全年的综合得分,并用Excel排序
2)定量分析实施奖励政策后各项考核指标的变化情况以及带来的整体效果
以附件1为例,我们可以计算出电话接待服务指标在每个月的平均得分情况(考虑的是总体的指标变化情况,各个厂家之间无需计算权重),然后分析指标的变化情况:
其他指标中的数据如上处理。
我们在Excle表中将所有指标每个月的平均得分汇总:
然后用折线图分析各项指标变化趋势:
由折线图可知,所有考核指标得分情况总体上都呈上升趋势。可见,实施奖励政策以后,各项考核指标的得分都有所增加,反映出各个4S店受奖励政策的鼓励,工作态度以及店内外环境及服务设施有了明显的改善,工作效率也明显提高。
问题2:
根据原评比奖励方案可以求得现有奖励总金额为241万:
方案一:
原方案中分为季度评比和年度评比,最短评比周期为三个月。在奖金的分配上前三名为相同金额,四至六名奖金金额相同,七至十名奖金金额相同。
评比周期的长短势必影响各4S店的积极性,周期过长会导致各店积极性的衰减,周期过短又会使各个店抱有不在乎的心理现象的出现。员工大都是以月结薪水,如果在每月结薪水时就有一个奖金的评比和发放,那么各个店的积极性就会得以保持甚至有所提升。
各个名次在奖金金额上的体现显得甚是重要,尤其是在前三名的区分中,一定要体现出差异性。否则竞争的激烈性会降低,积极性也会受挫,最终导致效益的降低。
我们在原方案的基础上,缩短评比周期,增加评比次数。由之前的一个季度为一个评比周期更换成以一个月为一个评比周期,取消季度评比制度,增设月度评比制度,仍然保留年度评比制度。为突出显示前三名奖励差异,对各个名次奖金的分配进行了调整。得到新的评比奖励方案,命名为:“方案一”。
根据4S店每个月度各项指标的综合得分情况进行评比,具体规则如下:
月度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
2.5
2
1.5
1
0.75
根据4S店每个年度各项指标的综合得分情况进行评比,具体规则如下:
年度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
20
15
10
8
7
使用得分表(见附件2. 1~14得分表)所给出的数据按照问题1中的模型利用C语言(见附录1)进行月度和年度的评比排名,评比的结果见(附件3. 月度及年度排名) ,其中前十名如下所示:
名次
一月
二月
三月
四月
五月
六月
七月
八月
九月
十月
十一月
十二月
年度
1
16
21
34
41
34
19
19
34
2
19
34
19
19
2
21
19
32
34
19
34
23
19
34
34
19
34
34
3
18
34
19
19
32
41
34
41
32
23
22
2
41
4
19
37
41
37
17
23
4
23
23
22
41
54
23
5
32
16
18
32
10
37
41
11
11
21
55
10
37
6
41
41
23
13
26
35
17
32
35
41
37
11
32
7
23
23
12
17
37
36
2
17
4
2
21
31
21
8
37
26
37
12
35
6
37
2
41
40
10
8
2
9
34
32
21
21
41
29
10
4
19
17
17
55
17
10
10
36
17
23
2
4
29
21
36
20
2
1
10
方案二:
在现有方案中,都是仅仅对综合排名设立了奖项。然而综合排名受影响因素较多,要求也更严,需要在任何一个指标得分都较高的情况下才能获奖。对于有的4S店,他们在某一些指标中成绩拔尖,总体成绩却很差。这样的4S店想要获奖是很难的,他们的积极性就必然会受到打击,从而可能会出现效绩滑坡。为了避免此类情况的发生,设立专项奖金就显得尤为重要。
在充分考量了各种指标,再结合现有的奖金金额不变和实际运营中企业十分看重销售量的情况下,在方案一的基础上,我们提出增设一个新的奖项的方案。
在方案一的基础上增设一个“销售之王”的奖项。“销售之王”由指标
(销售量完成率)来进行评比,评比周期为一年。该奖项名额只有一个,由销售量完成率为第一名的店获得。设立了这一奖项后,进一步增加了4S店之间竞争的激烈性,使得综合排名低,销售量完成率高的4S店能够获得奖项。增设该奖项之后的方案命名为:“方案二”。
根据4S店每个月度各项指标的综合得分情况进行评比,具体规则如下:
月度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
2.5
2
1.5
1
0.75
根据4S店每个年度各项指标的综合得分情况进行评比,具体规则如下:
年度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
18
14
10
8
7
根据4S店的销售量完成率的情况评比出“销售之王”:销售之王(销售量完成率第一名):奖励金额3万元
使用得分表(见附件2. 1~14得分表)所给出的数据按照问题1中的模型进行月度和年度的评比排名,评比的结果(见附件3. 月度及年度排名),其中前十名如下所示:
名次
一月
二月
三月
四月
五月
六月
七月
八月
九月
十月
十一月
十二月
年度
1
16
21
34
41
34
19
19
34
2
19
34
19
19
2
21
19
32
34
19
34
23
19
34
34
19
34
34
3
18
34
19
19
32
41
34
41
32
23
22
2
41
4
19
37
41
37
17
23
4
23
23
22
41
54
23
5
32
16
18
32
10
37
41
11
11
21
55
10
37
6
41
41
23
13
26
35
17
32
35
41
37
11
32
7
23
23
12
17
37
36
2
17
4
2
21
31
21
8
37
26
37
12
35
6
37
2
41
40
10
8
2
9
34
32
21
21
41
29
10
4
19
17
17
55
17
10
10
36
17
23
2
4
29
21
36
20
2
1
10
根据销售量完成率得分表(见附件1. 9~14得分表),在Excel中计算出55家4S店月均销售完成率,对月均销售完成率进行排名得到(附件4. 销售量完成率排名表)。前三名如下所示:
销售之王排名
第一名
第二名
第三名
店铺编号
48
4
21
因此,48号4S店获得销售之王奖项。
问题3:
方案三:
在方案二中已经增设了一个专项奖励,但是由于之前的资金和其他因素的限制,使得专项奖励设置得不是很完善。现在由于有了专项奖的资金支持,我们在方案一的基础上增设四个专项奖,得到方案三。
我们在充分分析了各个考核指标后,将14个指标分为了四大项,具体如下所示:
这四大项:服务、环境、运营、和效益贯穿了企业的整个生命。缺少任何一项都会给企业带来危险。为调动各家4S店的积极性,为这四项指标设立专项奖显得非常重要。因此我们在方案一的基础上增设四个奖项“服务之星奖”(O)、“环境保障奖”(P)、“运营能力奖”(S)、“效益成就奖”(R)。每个专项奖只有三个奖励名额(只奖励前三名)。
1) 专项奖总奖金(40万)分配规则与结果:
1 、分配规则
企业新增加的奖励资金作为这四项专项奖的奖金,各自的奖金金额按照各种奖项所含指标在所有指标中的权重比例来进行分配:
:“服务之星奖”的奖金总金额
:“环境保障奖”的奖金总金额
:“运营能力奖”的奖金总金额
:“效益成就奖”的奖金总金额
2 、分配结果
2)、专项奖评比规则:
每一个专项奖的评比是通过建立和问题1中相同的模型来评比的。
1 、构造判断矩阵
O
P
S
R
2 、一致性检验:
用MATLAB编程(见附录2)求出矩阵的最大特征值如下表所示:
判断矩阵
O
P
S
R
最大特征值
4.0916
4.0606
4.2072
2
RI值如下表所示:
阶数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
RI值
0
0
0.52
0.89
1.12
1.26
1.36
1.41
1.46
0.49
0.52
1.54
1.56
1.58
1.59
一致性检验结果如下表所示:
判断矩阵
O
P
S
R
最大特征值
4.0916
4.0606
4.2072
2
矩阵维度
4
4
4
2
0.030533
0.0202
0.069067
0
0.034307
0.022697
0.07760
是否通过一致性检验
通过
通过
通过
通过
(当
时,矩阵完全一致)
③、计算权重:
通过C语言编程(见附录1)分别求得这四种专项奖各指标的权重如下:
“服务之星奖“各指标权重
表:
指标
1(A)
2(B)
3(C)
4(D)
权重
0.332871612
0.212686021
0.378215172
0.076227194
“环境保障奖”各指标权重
表:
指标
1(E)
2(F)
3(G)
4(H)
权重
0.332871612
0.212686021
0.378215172
0.076227194
“运营能力奖”各指标权重
表:
指标
1(I)
2(J)
3(K)
4(L)
权重
0.332871612
0.212686021
0.378215172
0.076227194
“效益成就奖”各指标权重
表:
指标
1(M)
2(N)
权重
0.449489743
0.550510257
④、利用C语言(见附录1)计算综合得分
(
:指标对应的权重,
:指标对应的得分)
⑤、对综合得分进行排序
3)、方案三最终评比结果:
1 、根据4S店每个月度各项指标的综合得分情况进行评比,具体规则如下:
月度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
2.5
2
1.5
1
0.75
2 、根据4S店每年度各项指标的综合得分情况进行评比,具体规则如下:
年度评比名次
第1名
第2名
第3名
第4—6名
第7—10名
奖励金额(万元)
20
15
10
8
7
3 、专项奖规则如下:
根据“服务之星奖”所包含的四个指标的综合得分进行评比,具体规则如下:
服务之星年度排名
第1名
第2名
第3名
奖励金额(万元)
7.2
4.8
2.4
根据“环境保障奖”所包含的四个指标的综合得分进行评比,具体规则如下:
环境保障年度排名
第1名
第2名
第3名
奖励金额(万元)
2.8
1.8
0.9
根据“运营能力奖”所包含的四个指标的综合得分进行评比,具体规则如下:
运营能力年度排名
第1名
第2名
第3名
奖励金额(万元)
7.35
4.9
2.45
根据“效益成就奖”所包含的两个指标的综合得分进行评比,具体规则如下:
效益成就年度排名
第1名
第2名
第3名
奖励金额(万元)
2.7
1.8
0.8
4)、评比结果:
①、使用得分表中的数据进行月度和年度的评比排名,评比的结果见附录1,其中前十名如下所示:
奖金金额(万元)
名次
一月
二月
三月
四月
五月
六月
七月
八月
九月
十月
十一月
十二月
年度
年度
月度
20
2.5
1
16
21
34
41
34
19
19
34
2
19
34
19
19
15
2
2
21
19
32
34
19
34
23
19
34
34
19
34
34
10
1.5
3
18
34
19
19
32
41
34
41
32
23
22
2
41
8
1
4
19
37
41
37
17
23
4
23
23
22
41
54
23
8
1
5
32
16
18
32
10
37
41
11
11
21
55
10
37
8
1
6
41
41
23
13
26
35
17
32
35
41
37
11
32
7
0.75
7
23
23
12
17
37
36
2
17
4
2
21
31
21
7
0.75
8
37
26
37
12
35
6
37
2
41
40
10
8
2
7
0.75
9
34
32
21
21
41
29
10
4
19
17
17
55
17
7
0.75
10
10
36
17
23
2
4
29
21
36
20
2
1
10
3 、“服务之星奖”的年度排名结果见(附件5. 专项奖排名表)前三名的结果如下所示:
服务之星奖
第一名
第二名
第三名
4S店编号
23
29
17
奖金金额(万元)
7.2
4.8
2.4
4 、“环境保障奖”的年度排名结果见(附件5. 专项奖排名表)前三名的结果如下所示:
环境保障奖
第一名
第二名
第三名
4S店编号
8
41
16
奖金金额(万元)
2.8
1.8
0.9
5 、“运营能力奖”的年度排名结果见(附件5. 专项奖排名表)前三名的结果如下所示:
运营能力奖
第一名
第二名
第三名
4S店编号
34
44
26
奖金金额(万元)
7.35
4.9
2.45
6 、“效益成就奖”的年度排名结果见(附件5. 专项奖排名表)前三名的结果如下所示:
效益成就奖
第一名
第二名
第三名
4S店编号
48
26
25
奖金金额(万元)
2.7
1.8
0.8
5)排名后20%的4S店与整改建议:
根据四个专项奖的评比排名情况汇总得出55家4S店中在服务、环境、运营和效益这四项的后20%排名(即:第45名至第55名)的4S店如下所示:
名次
45名
46名
47名
48名
49名
50名
51名
52名
53名
54名
55名
服务类
4S店编号
51
50
53
42
40
26
8
38
48
27
47
环境类
4S店编号
37
48
9
4
42
32
13
24
22
25
15
运营类
4S店编号
28
38
5
7
46
33
47
29
25
45
39
效益类
4S店编号
39
27
1
17
14
45
29
44
5
28
3
整改建议:
①、首先应该加强服务、环境、运营、和效益方面的意识,可以在店内贴标语,定期对思想意识方面进行考核。
②、要落实到行动上,各个4S店可以自行制定优惠活动,既能让客户得到优惠,自身也能增加效益。
③、可以制定员工责任承担体制,奖惩是同时的,对于员工各项技能要进行培训,加强员工素质。增设详细晋升机制,让员工保持积极性。
④、制定月、周、日任务计划,要求分工明确细化、落实到人。强调我们在完成任务的前提是真正为顾客解决问题,不是为完成任务而完任务。从而提高忠诚顾客数量,同时也提升了自己4S店的信誉。
问题4
1)制定新的奖励政策
在汽车企业、4S店和客户三者的利益关系中,汽车企业需要的是良好的口碑和销量,4S店需要的是厂家的支持,客户需要的是满意的服务,客户对4S店的评价直接影响了客户对汽车企业品牌的信任度。因此,在兼顾企业、4S店和客户三者的利益过程中,4S店服务质量的高低对客户的满意程度以及汽车企业在公众中的口碑至关重要。
为了激励4S店提供更好的服务,我们可以建议企业再拿出55万设立一个奖项,我们称之为“方案三”。这个奖项的评比指标是客户回头率,客户回头率越高,说明4S店的服务质量越好。
评分细则:
客户回头率(%)
90.00~100.00
80.00~89.99
70.00~79.99
60.00~69.99
……
0.00~10.00
奖金(元)
10000
9000
8000
7000
……
1000
这样,每个4S店都能得到方案三提供的奖金,客户回头率越高,得到的奖金越多。每个4S店最多能得10000元奖金,客户回头率达不到90%以上的,奖金就会有剩余,剩余的奖金收归企业所有。
2)评比结果
我们用Excle 计算出每个4S店在全年中平均每个月的客户回头率,并得出每个店所得奖金数额。
五、模型评价
本文中的模型把多个不同指标统一成10分制得分表,这样就使接下来的问题变得相对简单了,解决了多指标之间不能进行汇总比较的问题。
模型中构造了判断矩阵,虽然进行了一致性检验,但是毕竟主观因素大。该模型中建立了相对完善的综合评比方案,能够使每一家4S店都得到一个具体的10分制分数,比较起来更加的便利。
该模型对于设立专项奖的评比更为合理,专项奖的评比不等于单指标的评比。运用此模型能够恰当的的得出各个4S店在专项奖励下的具体得分分值,可以让各个4S店直接看到自己的不足在哪些方面。
如果能进一步优化该模型的话,可以试着减少人为因素的干预,尽可能的只用数据就能评出名次。
六、附录:
附录1(C语言程序)
附件9转化得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
// srand((unsigned)time(NULL));
// freopen("test.in","w",stdout);
// freopen("test.in","r",stdin);
// freopen("test.out","w",stdout);
double xx[55][12];
freopen("14.txt","r",stdin);
freopen("1401.txt","w",stdout);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[i][j]);
if(xx[i][j] == 0)
{
xx[i][j] = 10;
}
else if(xx[i][j] == 1)
{
xx[i][j] = 9;
}
else if(xx[i][j] >= 2 && xx[i][j] <= 4)
{
xx[i][j] = 8;
}
else if(xx[i][j] >= 5 && xx[i][j] <= 9)
{
xx[i][j] = 7;
}
else if(xx[i][j] >= 10 && xx[i][j] <= 20)
{
xx[i][j] = 6;
}
else if(xx[i][j] >= 20 && xx[i][j] <= 30)
{
xx[i][j] = 5;
}
else if(xx[i][j] >= 30 && xx[i][j] <= 40)
{
xx[i][j] = 4;
}
else if(xx[i][j] >= 40 && xx[i][j] <= 50)
{
xx[i][j] = 3;
}
else if(xx[i][j] >= 50 && xx[i][j] <= 60)
{
xx[i][j] = 2;
}
else if(xx[i][j] > 60)
{
xx[i][j] = 1;
}
printf(j == 11 ? "%lf\n" : "%lf\t",xx[i][j]);
}
}
return 0;
}
附件10转化得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
// srand((unsigned)time(NULL));
// freopen("test.in","w",stdout);
// freopen("test.in","r",stdin);
// freopen("test.out","w",stdout);
double xx[55][12];
freopen("11.txt","r",stdin);
freopen("1101.txt","w",stdout);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[i][j]);
if(xx[i][j] >= 0 && xx[i][j] <= 9.99)
{
xx[i][j] = 1;
}
else if(xx[i][j] >= 10 && xx[i][j] <= 19.99)
{
xx[i][j] = 2;
}
else if(xx[i][j] >= 20 && xx[i][j] <= 29.99)
{
xx[i][j] = 3;
}
else if(xx[i][j] >= 30 && xx[i][j] <= 39.99)
{
xx[i][j] = 4;
}
else if(xx[i][j] >= 40 && xx[i][j] <= 49.99)
{
xx[i][j] = 5;
}
else if(xx[i][j] >= 50 && xx[i][j] <= 59.99)
{
xx[i][j] = 6;
}
else if(xx[i][j] >= 60 && xx[i][j] <= 69.99)
{
xx[i][j] = 7;
}
else if(xx[i][j] >= 70 && xx[i][j] <= 79.99)
{
xx[i][j] = 8;
}
else if(xx[i][j] >= 80 && xx[i][j] <= 89.99)
{
xx[i][j] = 9;
}
else
{
xx[i][j] = 10;
}
printf(j == 11 ? "%lf\n" : "%lf\t",xx[i][j]);
}
}
return 0;
}
附件11转化得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
// srand((unsigned)time(NULL));
// freopen("test.in","w",stdout);
// freopen("test.in","r",stdin);
// freopen("test.out","w",stdout);
double xx[55][12];
freopen("11.txt","r",stdin);
freopen("1101.txt","w",stdout);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[i][j]);
if(xx[i][j] >= 0 && xx[i][j] <= 9.99)
{
xx[i][j] = 0;
}
else if(xx[i][j] >= 10 && xx[i][j] <= 19.99)
{
xx[i][j] = 1;
}
else if(xx[i][j] >= 20 && xx[i][j] <= 29.99)
{
xx[i][j] = 2;
}
else if(xx[i][j] >= 30 && xx[i][j] <= 39.99)
{
xx[i][j] = 3;
}
else if(xx[i][j] >= 40 && xx[i][j] <= 49.99)
{
xx[i][j] = 4;
}
else if(xx[i][j] >= 50 && xx[i][j] <= 59.99)
{
xx[i][j] = 5;
}
else if(xx[i][j] >= 60 && xx[i][j] <= 69.99)
{
xx[i][j] = 6;
}
else if(xx[i][j] >= 70 && xx[i][j] <= 79.99)
{
xx[i][j] = 7;
}
else if(xx[i][j] >= 80 && xx[i][j] <= 89.99)
{
xx[i][j] = 8;
}
else if(xx[i][j] >= 90 && xx[i][j] <= 99.99)
{
xx[i][j] = 9;
}
else
{
xx[i][j] = 10;
}
printf(j == 11 ? "%lf\n" : "%lf\t",xx[i][j]);
}
}
return 0;
}
附件12转化得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
// srand((unsigned)time(NULL));
// freopen("test.in","w",stdout);
// freopen("test.in","r",stdin);
// freopen("test.out","w",stdout);
double xx[55][12];
freopen("12.txt","r",stdin);
freopen("1201.txt","w",stdout);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[i][j]);
if(xx[i][j] == 1 )
{
xx[i][j] = 10;
}
else if(xx[i][j] >= 1 && xx[i][j] <= 1.99)
{
xx[i][j] = 9;
}
else if(xx[i][j] >= 2 && xx[i][j] <= 2.99)
{
xx[i][j] = 8;
}
else if(xx[i][j] >= 3 && xx[i][j] <= 3.99)
{
xx[i][j] = 7;
}
else if(xx[i][j] >= 4 && xx[i][j] <= 4.99)
{
xx[i][j] = 6;
}
else if(xx[i][j] >= 5 && xx[i][j] <= 5.99)
{
xx[i][j] = 5;
}
else if(xx[i][j] >= 6 && xx[i][j] <= 6.99)
{
xx[i][j] = 4;
}
else if(xx[i][j] >= 7 && xx[i][j] <= 7.99)
{
xx[i][j] = 3;
}
else if(xx[i][j] >= 8 && xx[i][j] <= 8.99)
{
xx[i][j] = 2;
}
else if(xx[i][j] >= 9 && xx[i][j] <= 9.99)
{
xx[i][j] = 1;
}
else
{
xx[i][j] = 0;
}
printf(j == 11 ? "%lf\n" : "%lf\t",xx[i][j]);
}
}
return 0;
}
附件13、附件14转化得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
// srand((unsigned)time(NULL));
// freopen("test.in","w",stdout);
// freopen("test.in","r",stdin);
// freopen("test.out","w",stdout);
double xx[55][12];
freopen("14.txt","r",stdin);
freopen("1401.txt","w",stdout);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[i][j]);
if(xx[i][j] >= 0 && xx[i][j] <= 19.99)
{
xx[i][j] = 1;
}
else if(xx[i][j] >= 20 && xx[i][j] <= 39.99)
{
xx[i][j] = 2;
}
else if(xx[i][j] >= 40 && xx[i][j] <= 49.99)
{
xx[i][j] = 3;
}
else if(xx[i][j] >= 50 && xx[i][j] <= 59.99)
{
xx[i][j] = 4;
}
else if(xx[i][j] >= 60 && xx[i][j] <= 69.99)
{
xx[i][j] = 5;
}
else if(xx[i][j] >= 70 && xx[i][j] <= 79.99)
{
xx[i][j] = 6;
}
else if(xx[i][j] >= 80 && xx[i][j] <= 89.99)
{
xx[i][j] = 7;
}
else if(xx[i][j] >= 90 && xx[i][j] <= 99.99)
{
xx[i][j] = 8;
}
else if(xx[i][j] >= 100 && xx[i][j] <= 109.99)
{
xx[i][j] = 9;
}
else if(xx[i][j] >= 110)
{
xx[i][j] = 10;
}
printf(j == 11 ? "%lf\n" : "%lf\t",xx[i][j]);
}
}
return 0;
}
求14个指标的权重:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
int main()
{
freopen("aaa.txt","r",stdin);
freopen("bbb.txt","w",stdout);
double xx[14][14];
double yy[14];
double sum = 0;
for(int i = 0;i < 14;i ++)
{
yy[i] = 1;
for(int j = 0;j < 14;j ++)
{
scanf("%lf",&xx[i][j]);
yy[i] *= xx[i][j];
}
yy[i] = pow(yy[i],1.0/14);
sum += yy[i];
}
for(int i = 0;i < 14;i ++)
{
printf("%.10lf\t",yy[i]/sum);
}
return 0;
}
求季度及年度综合得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
double xx[14][55][12]; //初始数据
double yy[55][5];
double QZ[14];
void input()
{
freopen("QZ.txt","r",stdin);
for(int i = 0;i < 14;i ++)
{
scanf("%lf",&QZ[i]);
}
fclose(stdin);
freopen("SJ (1).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[0][i][j]);
}
}
fclose(stdin);
freopen("SJ (2).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[1][i][j]);
}
}
fclose(stdin);
freopen("SJ (3).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[2][i][j]);
}
}
fclose(stdin);
freopen("SJ (4).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[3][i][j]);
}
}
fclose(stdin);
freopen("SJ (5).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[4][i][j]);
}
}
fclose(stdin);
freopen("SJ (6).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[5][i][j]);
}
}
fclose(stdin);
freopen("SJ (7).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[6][i][j]);
}
}
fclose(stdin);
freopen("SJ (8).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[7][i][j]);
}
}
fclose(stdin);
freopen("SJ (9).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[8][i][j]);
}
}
fclose(stdin);
freopen("SJ (10).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[9][i][j]);
}
}
fclose(stdin);
freopen("SJ (11).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[10][i][j]);
}
}
fclose(stdin);
freopen("SJ (12).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[11][i][j]);
}
}
fclose(stdin);
freopen("SJ (13).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[12][i][j]);
}
}
fclose(stdin);
freopen("SJ (14).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[13][i][j]);
}
}
fclose(stdin);
}
void work()
{
freopen("output.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][4] = 0;
for(int l = 0;l < 4;l ++)
{
yy[i][l] = 0;
for(int j = 0;j < 14;j ++)
{
sum = 0;
for(int k = l * 3;k < (l + 1)*3;k ++)
{
sum += xx[j][i][k];
}
sum *= QZ[j];
yy[i][l] += sum;
}
yy[i][l] /= 3;
yy[i][4] += yy[i][l];
}
yy[i][4] /= 4;
}
printf("公司\t一季度\t二季度\t三季度\t四季度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 5;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
}
void print()
{
;
}
int main()
{
input();
work();
return 0;
}
求月度及年度综合得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
double xx[14][55][12]; //初始数据
double yy[55][13];
double QZ[14];
void input()
{
freopen("QZ.txt","r",stdin);
for(int i = 0;i < 14;i ++)
{
scanf("%lf",&QZ[i]);
}
fclose(stdin);
freopen("SJ (1).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[0][i][j]);
}
}
fclose(stdin);
freopen("SJ (2).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[1][i][j]);
}
}
fclose(stdin);
freopen("SJ (3).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[2][i][j]);
}
}
fclose(stdin);
freopen("SJ (4).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[3][i][j]);
}
}
fclose(stdin);
freopen("SJ (5).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[4][i][j]);
}
}
fclose(stdin);
freopen("SJ (6).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[5][i][j]);
}
}
fclose(stdin);
freopen("SJ (7).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[6][i][j]);
}
}
fclose(stdin);
freopen("SJ (8).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[7][i][j]);
}
}
fclose(stdin);
freopen("SJ (9).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[8][i][j]);
}
}
fclose(stdin);
freopen("SJ (10).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[9][i][j]);
}
}
fclose(stdin);
freopen("SJ (11).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[10][i][j]);
}
}
fclose(stdin);
freopen("SJ (12).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[11][i][j]);
}
}
fclose(stdin);
freopen("SJ (13).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[12][i][j]);
}
}
fclose(stdin);
freopen("SJ (14).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[13][i][j]);
}
}
fclose(stdin);
}
void work()
{
freopen("output.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][12] = 0;
for(int l = 0;l < 12;l ++)
{
yy[i][l] = 0;
for(int j = 0;j < 14;j ++)
{
sum = xx[j][i][l];
sum *= QZ[j];
yy[i][l] += sum;
}
yy[i][12] += yy[i][l];
}
yy[i][12] /= 12;
// printf("%.10lf\n",yy[i][12]);
}
printf("店铺\t一月度\t二月度\t三月度\t四月度\t五月度\t六月度\t七月度\t八月度\t九月度\t十月度\t十一月度\t十二月度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 13;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
}
int main()
{
input();
work();
return 0;
}
求专项奖的指标权重:
//求权重
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
double QZ[14]; //权重
double xx[4][5]; //素材
void input()
{
int k = 0;
freopen("SC-O.txt","r",stdin);
double sum = 0;
double temp = 1;
for(int i = 0;i < 4;i ++)
{
temp = 1;
for(int j = 0;j < 4;j ++)
{
scanf("%lf",&xx[i][j]);
temp *= xx[i][j];
}
xx[i][4] = pow(temp,1.0/4);
sum += xx[i][4];
}
for(int i = 0;i < 4;i ++)
{
QZ[k ++] = xx[i][4] / sum;
}
fclose(stdin);
freopen("SC-O.txt","r",stdin);
sum = 0;
temp = 1;
for(int i = 0;i < 4;i ++)
{
temp = 1;
for(int j = 0;j < 4;j ++)
{
scanf("%lf",&xx[i][j]);
temp *= xx[i][j];
}
xx[i][4] = pow(temp,1.0/4);
sum += xx[i][4];
}
for(int i = 0;i < 4;i ++)
{
QZ[k ++] = xx[i][4] / sum;
}
fclose(stdin);
freopen("SC-O.txt","r",stdin);
sum = 0;
temp = 1;
for(int i = 0;i < 4;i ++)
{
temp = 1;
for(int j = 0;j < 4;j ++)
{
scanf("%lf",&xx[i][j]);
temp *= xx[i][j];
}
xx[i][4] = pow(temp,1.0/4);
sum += xx[i][4];
}
for(int i = 0;i < 4;i ++)
{
QZ[k ++] = xx[i][4] / sum;
}
fclose(stdin);
freopen("SC-O.txt","r",stdin);
sum = 0;
temp = 1;
for(int i = 0;i < 2;i ++)
{
temp = 1;
for(int j = 0;j < 2;j ++)
{
scanf("%lf",&xx[i][j]);
temp *= xx[i][j];
}
xx[i][4] = pow(temp,1.0/2);
sum += xx[i][4];
}
for(int i = 0;i < 2;i ++)
{
QZ[k ++] = xx[i][4] / sum;
}
fclose(stdin);
}
void print()
{
freopen("QZ.txt","w",stdout);
for(int i = 0;i < 14;i ++)
{
printf("%.10lf\t",QZ[i]);
}
}
int main()
{
input();
print();
return 0;
}
求专项奖励下的综合得分:
#include"set"
#include"map"
#include"queue"
#include"stack"
#include"math.h"
#include"time.h"
#include"ctype.h"
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"iostream"
#include"algorithm"
using namespace std;
double xx[14][55][12]; //初始数据
double yy[55][13];
double QZ[14];
void input()
{
freopen("QZ.txt","r",stdin);
for(int i = 0;i < 14;i ++)
{
scanf("%lf",&QZ[i]);
}
fclose(stdin);
freopen("SJ (1).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[0][i][j]);
}
}
fclose(stdin);
freopen("SJ (2).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[1][i][j]);
}
}
fclose(stdin);
freopen("SJ (3).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[2][i][j]);
}
}
fclose(stdin);
freopen("SJ (4).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[3][i][j]);
}
}
fclose(stdin);
freopen("SJ (5).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[4][i][j]);
}
}
fclose(stdin);
freopen("SJ (6).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[5][i][j]);
}
}
fclose(stdin);
freopen("SJ (7).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[6][i][j]);
}
}
fclose(stdin);
freopen("SJ (8).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[7][i][j]);
}
}
fclose(stdin);
freopen("SJ (9).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[8][i][j]);
}
}
fclose(stdin);
freopen("SJ (10).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[9][i][j]);
}
}
fclose(stdin);
freopen("SJ (11).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[10][i][j]);
}
}
fclose(stdin);
freopen("SJ (12).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[11][i][j]);
}
}
fclose(stdin);
freopen("SJ (13).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[12][i][j]);
}
}
fclose(stdin);
freopen("SJ (14).txt","r",stdin);
for(int i = 0;i < 55;i ++)
{
for(int j = 0;j < 12;j ++)
{
scanf("%lf",&xx[13][i][j]);
}
}
fclose(stdin);
}
void work01()
{
freopen("out01.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][12] = 0;
for(int l = 0;l < 12;l ++)
{
yy[i][l] = 0;
for(int j = 0;j < 4;j ++)
{
sum = xx[j][i][l] * QZ[j];
yy[i][l] += sum;
}
yy[i][12] += yy[i][l];
}
yy[i][12] /= 12;
}
printf("店铺\t一月度\t二月度\t三月度\t四月度\t五月度\t六月度\t七月度\t八月度\t九月度\t十月度\t十一月度\t十二月度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 13;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
fclose(stdout);
}
void work02()
{
freopen("out02.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][12] = 0;
for(int l = 0;l < 12;l ++)
{
yy[i][l] = 0;
for(int j = 4;j < 8;j ++)
{
sum = xx[j][i][l] * QZ[j];
yy[i][l] += sum;
}
yy[i][12] += yy[i][l];
}
yy[i][12] /= 12;
}
printf("店铺\t一月度\t二月度\t三月度\t四月度\t五月度\t六月度\t七月度\t八月度\t九月度\t十月度\t十一月度\t十二月度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 13;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
fclose(stdout);
}
void work03()
{
freopen("out03.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][12] = 0;
for(int l = 0;l < 12;l ++)
{
yy[i][l] = 0;
for(int j = 8;j < 12;j ++)
{
sum = xx[j][i][l] * QZ[j];
yy[i][l] += sum;
}
yy[i][12] += yy[i][l];
}
yy[i][12] /= 12;
}
printf("店铺\t一月度\t二月度\t三月度\t四月度\t五月度\t 六月度\t七月度\t八月度\t九月度\t十月度\t十一月度\t十二月度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 13;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
fclose(stdout);
}
void work04()
{
freopen("out04.xls","w",stdout);
double sum;
for(int i = 0;i < 55;i ++)
{
yy[i][12] = 0;
for(int l = 0;l < 12;l ++)
{
yy[i][l] = 0;
for(int j = 12;j < 14;j ++)
{
sum = xx[j][i][l] * QZ[j];
yy[i][l] += sum;
}
yy[i][12] += yy[i][l];
}
yy[i][12] /= 12;
}
printf("店铺\t一月度\t二月度\t三月度\t四月度\t五月度\t六月度\t七月度\t八月度\t九月度\t十月度\t十一月度\t十二月度\t年度\n");
for(int i = 0;i < 55;i ++)
{
printf("%d\t",i + 1);
for(int j = 0;j < 13;j ++)
{
printf("%.10lf\t",yy[i][j]);
}
printf("\n");
}
fclose(stdout);
}
int main()
{
input();
work01();
work02();
work03();
work04();
return 0;
}
附录2(Matlab程序)
求指标1~14判断矩阵的最大特征值:
A =[1 2 1 3 2 2 4 5 1/3 1/3 1/2 2 3 3;
1/2 1 1/2 4 2 2 4 7 1/2 1 1/2 2 2 2;
1 2 1 5 3 3 2 3 2 1 1/3 2 2 2;
1/3 1/4 1/5 1 3 3 3 5 1/2 1/4 1/3 1/2 2 2;
1/2 1/2 1/3 1/3 1 1 2 2 1/2 1/2 1/2 2 1/2 1/2;
1/2 1/2 1/3 1/3 1 1 2 2 1/2 1/2 1/2 2 1/2 1/2;
1/4 1/4 1/2 1/3 1/2 1/2 1 2 1/4 1/3 1/3 1/2 1/3 1/3;
1/5 1/7 1/3 1/5 1/2 1/2 1/2 1 1/4 1/3 1/3 1/2 1/3 1/3;
3 2 1/2 2 2 2 4 4 1 1 1/2 3 2 2;
3 1 1 4 2 2 3 3 1 1 2 3 2 2;
2 2 3 3 2 2 3 3 2 1/2 1 2 1/3 1/3;
1/2 1/2 1/2 2 1/2 1/2 2 2 1/3 1/3 1/2 1 1/2 1/3;
1/3 1/2 1/2 1/2 2 2 3 3 1/2 1/2 3 2 1 1/2;
1/3 1/2 1/2 1/2 2 2 3 3 1/2 1/2 3 3 2 1];
[V,D] = eig(A) %求特征值
eigenvalue=diag(D);lamda=eigenvalue(1) %求最大特征值
求矩阵O最大特征值:
O=[1 2 1 3;
1/2 1 1/2 4;
1 2 1 5;
1/3 1/4 1/5 1];
[V,D] = eig(O) %求特征值
eigenvalue=diag(D);lamda=eigenvalue(1) %求最大特征值
求矩阵P最大特征值:
P=[1 1 2 2;
1 1 2 2;
1/2 1/2 1 2;
1/2 1/2 1/2 1];
[V,D] = eig(P) %求特征值
eigenvalue=diag(D);lamda=eigenvalue(1) %求最大特征值
求矩阵S最大特征值:
S=[1 1 1/2 3;
1 1 2 3;
2 1/2 1 2;
1/3 1/3 1/2 1];
[V,D] = eig(S) %求特征值
eigenvalue=diag(D);lamda=eigenvalue(1) %求最大特征值
求矩阵S最大特征值:
R=[1 1/2;
2 1];
[V,D] = eig(R) %求特征值
eigenvalue=diag(D);lamda=eigenvalue(1) %求最大特征值