以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]多选题得分自动生成 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=184410) |
||||
-- 作者:miaoqingqing -- 发布时间:2022/12/6 15:08:00 -- [求助]多选题得分自动生成 根据多选题得分规则,做题选项vs正确答案,求助自动,录入得分 得分规则; 1、考试中多选题只选对部分,每选对一条给0.5分,最多2分,有5个选项,只要选择错一条,本题得0分! 2、如果多项选择题只有2个正确(最少2个),你全选对,则得2分,有1个选对,其余未选得0.5分,选错一个就为0分啦! 3、如果多项选择题有3个正确,你全选对,则得2分,有1个选对,其余未选得0.5分,选对2个其余未选得1分,选错一个就为0分啦! 4、如果多项选择题有4个正确(最多4个),你全选对,则得2分,有1个选对,其余未选得0.5分,选对2个其余未选得1分,选对3个其余未选得1.5分,选错一个就为0分啦!
版本,不能升级,辛苦蓝总把代码贴出来,感谢
|
||||
-- 作者:有点蓝 -- 发布时间:2022/12/6 15:14:00 -- 这种业务问题请自行解决。一般遍历处理即可 |
||||
-- 作者:miaoqingqing -- 发布时间:2022/12/6 15:58:00 -- 回复:(有点蓝)这种业务问题请自行解决。一般遍历处... 蓝总,论坛里,有类似参考案例吗? |
||||
-- 作者:有点蓝 -- 发布时间:2022/12/6 16:41:00 -- 没有。 1、遍历每一行, 2、这行正确答案放入集合根据集合(正确答案)个数使用不同的规则。 3、遍历用户的答案,判断是否在集合内,如果在,计数+1 4、根据计数值计算分数
|
||||
-- 作者:y2287958 -- 发布时间:2022/12/7 10:08:00 -- For Each dr As DataRow In DataTables("表A").DataRows Dim 答案() As String = dr("正确答案").split(",") Dim 答题() As String = dr("做题选项").split(",") If 答题.Except(答案).Count > 0 Then dr("得分") = 0 ElseIf dr("正确答案") = dr("做题选项") Then dr("得分") = 2 ElseIf 答题.Intersect(答案).Count > 0 Then dr("得分") = 答题.Intersect(答案).Count * 0.5 End If Next
|