标题:请老师给这个积分算法一点提示吧
只看楼主
pxinfo
Rank: 1
等 级:新手上路
帖 子:53
专家分:5
注 册:2019-6-30
结帖率:56.25%
已结贴  问题点数:20 回复次数:2 
请老师给这个积分算法一点提示吧
请老师给这个积分算法一点提示吧,代码应该怎么写啊?这样的三个表的设计合理吗? 谢谢老师

学生每月成绩作为基础数据表:
ID 姓名  考核时间  理论成绩  操作成绩  合计成绩  录入时间   备注
1  张三  2019-1-1    45          15      60       2019-1-5
1  张三  2019-2-1    55          20      75       2019-2-5
1  张三  2019-3-1    50          30      80       2019-3-5
1  张三  2019-3-5    42.25       22.75   65       2019-3-5 转换结余

奖励积分表
ID 姓名 奖励积分
1  张三   1

兑换积分表
ID 姓名 兑换积分
1  张三   0

积分转换时间表(用于记录学员转换成绩运算的起始时间)
ID 姓名 转换时间
1  张三 2019-3-5

每个月都会有成绩录入,每满150分,且平均分高于60分,转换成一个奖励积分,如果平均分低于60分,则转换成一个兑换积分,

上面三个月的数据加起来有215分,超出150分的部分65分,按照65分的65%(42.25分)转成理论成绩,35%(22.75)转成操作成绩保留在基础数据,累积到下次满150分的运算。
搜索更多相关主题的帖子: 老师 积分 成绩 转换 时间 
2019-12-18 22:04
yingshu
Rank: 4
等 级:贵宾
威 望:10
帖 子:49
专家分:212
注 册:2018-7-24
得分:20 
select 姓名,sum(合计)as 合计   form 表 group by 姓名           ’如果计算平均分不考虑转换结余,增加WHERE语句
 for i = 0 to rs.recordcount -1
if 合计>160 then
    变量 =合计/次数
    select case 变量
        CASE >=60
            合计-160 差额分摊后写入“基础数据表”
              日期写入“积分转换时间表 ”
              奖励积分写入 “奖励积分表”
        CASE <60
            合计-160 差额分摊后写入“基础数据表”
             日期写入“积分转换时间表 ”
              奖励积分写入 “兑换积分表”
    END SELECT
end if
      next   
希望没有错别字,
希望对你有帮助

[此贴子已经被作者于2019-12-20 13:42编辑过]

2019-12-20 13:37
pxinfo
Rank: 1
等 级:新手上路
帖 子:53
专家分:5
注 册:2019-6-30
得分:0 
谢谢老师,我试试看
2019-12-21 22:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498491-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.134898 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved