以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]多选题,全选对2分,不对0分,部分对1个0.5分,部分对2个1分,部分对3个1.5分  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=189902)

--  作者:185723664
--  发布时间:2024/1/3 19:31:00
--  [求助]多选题,全选对2分,不对0分,部分对1个0.5分,部分对2个1分,部分对3个1.5分
第一列是多选题标准答案,第二列是答题者答案,求助第三列自动录入答题者得分,
多选题得分规则:
全对,得2分,
有1个不对,得0分,
不完全对,只对1个0.5分
不完全对,只对2个1分,
不完全对,只对3个1.5分

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选题得分自动计算.foxdb


在统计学生成绩,急需使用这个功能,坛主或哪位高手指点一下了,感谢
[此贴子已经被作者于2024/1/3 21:08:58编辑过]

--  作者:y2287958
--  发布时间:2024/1/4 8:30:00
--  
For Each dr As DataRow In DataTables("表A").DataRows
    If dr.IsNull ("第一列") = False Then
        Dim 标准答案 As String = dr("第一列")
        Dim 考生答案 As String = dr("第二列")
        If 考生答案 = 标准答案 Then
            dr("第三列") = "2"
        ElseIf 考生答案.except(标准答案).count > 0 Then
            dr("第三列") = "0"
        Else
            dr("第三列") = 考生答案.Intersect(标准答案).count * 0.5 
        End If 
    End If 
Next