積分值等級:
等級
積分值
等級
積分值
等級
積分值
1級
0-10
10級
131-150
19級
451-500
2級
11-20
11級
151-180
20級
501-550
3級
21-30
12級
181-210
21級
551-650
4級
31-40
13級
211-240
22級
651-750
5級
41-50
14級
241-270
23級
751-850
6級
51-70
15級
271-300
24級
851-950
7級
71-90
16級
301-350
25級
951-1000
8級
91-110
17級
351-400
26級
1001以上
9級
111-130
18級
401-450
?
?
注:1-5級是每10個積分值遞增一級;6-10級是每20個積分值遞增一級;11-15級是每30個積分值遞增一級;16-20級是每50個積分值遞增一級;21級以上是每100個積分值遞增一級;積分等級最高等級為26級。
/// <summary> /// 獲取積分等級 /// </summary> /// <param name="loveNum">積分值</param> /// <returns></returns> public int GetLoveLevel(int loveNum) { int[,] number2D = new int[26, 2] { { 0, 10 }, { 11 , 20 }, { 21 , 30 }, { 31 , 40 }, { 41 , 50 }, { 51 , 70 }, { 71 , 90 }, { 91 , 110 }, { 111 , 130 }, { 131 , 150 }, { 151 , 180 }, { 181 , 210 }, { 211 , 240 }, { 241 , 270 }, { 271 , 300 }, { 301 , 350 }, { 351 , 400 }, { 401 , 450 }, { 451 , 500 }, { 501 , 550 }, { 551 , 650 }, { 651 , 750 }, { 751 , 850 }, { 851 , 950 }, { 951 , 1000 }, { 1001, 1001 } }; if (loveNum <= 0) { return 1; } if (loveNum >= number2D[number2D.GetLength(0) - 1, 0]) { return number2D.GetLength(0); } for (int i = 0; i < number2D.GetLength(0); i++) { if (loveNum >= number2D[i, 0] && loveNum <= number2D[i, 1]) { return i + 1; } } return 1; }
有好的程序也可以寫下來,讓小弟學習學習^_^
2 回答

森欄
TA貢獻1810條經(jīng)驗 獲得超5個贊
這個問題使用表驅(qū)動的方式實現(xiàn)比較好。因為積分等級劃分標準應該說是這個應用的變化部分。所以通過表驅(qū)動的方式進行隔離。
而相應的根據(jù)積分獲取等級的話,就可以很簡單的通過sql來實現(xiàn)。
具體代碼就不寫了,很簡單的。

瀟湘沐
TA貢獻1816條經(jīng)驗 獲得超6個贊
用數(shù)據(jù)庫的表 新建3個自動 等級 小積分 ?大積分
select 等級 from 表 where 大積分>=xxx and 小積分<=xxx?
這樣如果積分規(guī)則有變化 也只用更新表內(nèi)容,而不用更新程序
- 2 回答
- 0 關(guān)注
- 428 瀏覽
添加回答
舉報
0/150
提交
取消