什么是安全库存量 理论:http://wiki.mbalib.com/wiki/%E5%AE%89%E5%85%A8%E5%BA%93%E5%AD%98%E9%87%8F
周末被学校抓来当壮丁,据说是参加XXX全国XX大赛。
结果写了下面这样一小堆垃圾。

Code
1
private double CalcSS(string strCompName)
2
{
3
//初始化变量
4
int iCount = 0; //周期数量
5
double douSum = 0; //周期需求量
6
double douSum2 = 0;
7
double douAvg = 0; //平均值
8
double douAvg2 = 0; //方差平均值
9
double douD = 0; //
10
Dictionary<string, double> dDouNum = new Dictionary<string, double>();
11
12
//for (int i = 0; i < 12; i++)
13
//{
14
// dDouNum.Add(i.ToString(), i * 100);
15
//}
16
if (strCompName == "1")
17
{
18
dDouNum.Add("1", 4);
19
dDouNum.Add("2", 2);
20
dDouNum.Add("3", 4);
21
dDouNum.Add("4", 7);
22
dDouNum.Add("5", 9);
23
dDouNum.Add("6", 11);
24
dDouNum.Add("7", 7);
25
dDouNum.Add("8", 11);
26
dDouNum.Add("9", 13);
27
dDouNum.Add("10", 7);
28
dDouNum.Add("11", 8);
29
dDouNum.Add("12", 11);
30
}
31
else
32
{ dDouNum.Add("1", 0.3);
33
dDouNum.Add("2", 0.92);
34
dDouNum.Add("3", 0.716);
35
dDouNum.Add("4", 0.96);
36
dDouNum.Add("5", 0.46);
37
dDouNum.Add("6", 0.69);
38
dDouNum.Add("7", 0.91);
39
dDouNum.Add("8", 0.41);
40
dDouNum.Add("9", 2.004);
41
dDouNum.Add("10", 0.676);
42
dDouNum.Add("11", 0.925);
43
dDouNum.Add("12", 0.765);
44
}
45
46
//计算周期次数、需求量合计
47
iCount = dDouNum.Count;
48
foreach (KeyValuePair<string, double> kv in dDouNum)
49
{
50
douSum += kv.Value;
51
}
52
//计算平均值
53
douAvg = douSum / iCount;
54
55
56
//计算方差合计
57
foreach (KeyValuePair<string, double> kv in dDouNum)
58
{
59
douSum2 += System.Math.Pow((kv.Value - douAvg), 2);
60
}
61
//计算方差平均值
62
douAvg2 = douSum2 / iCount;
63
douD = System.Math.Sqrt(douAvg2);
64
return douD;
65
}
66
67
private void btnCale_Click(object sender, EventArgs e)
68
{
69
//double dou = CalcSS() * 1.65 ;
70
//MessageBox.Show(dou.ToString());
71
double douSS1 = CalcSS("1") * 1.65;
72
double douSS2 = CalcSS("2") * 1.65;
73
double douSSAll = douSS1 + douSS2;
74
double douSSAll2 = System.Math.Pow(douSS1, 2) + System.Math.Pow(douSS2, 2);
75
double douD = System.Math.Sqrt(douSSAll2);
76
77
double douSS11 = douD * douSS1 / douSSAll;
78
double douSS12 = douD * douSS2 / douSSAll;
79
}