兰得糊涂YE 2021-09-30 16:21 采纳率: 100%
浏览 42
已结题

考试系统中,如何将题目乱序?

需求是这样的:
每个学生有一个唯一的id;
每个学生的题目顺序都不能一样,但是同一个学生,每次进入的题目顺序都是一样的?
请问,这样好不好实现?
ps:不想在服务器保存学生的题目顺序,希望能通过某种乱序算法来对每个学生的题目排序
请问能提供一个思路吗?谢谢

  • 写回答

3条回答 默认 最新

  • sirwsl Java领域新星创作者 2021-09-30 16:32
    关注

    如果换成我自己做,我会这样去设计:
    1、学生进入系统后随机去数据库中取一份试题,存Redis中,用户id作为key,题目作为list,存给redis中,用户访问时,访问redis中数据存给本地localstorm中,这样即使用户换了浏览器,乃至换了地方,只要在规定时间内登录,永远都能保证同一用户同一份卷子,不同用户不同卷子。如果害怕抽到相同题目,可以在答案上加一个随机数,实现答案顺序随机,这样基本就能保证唯一了。
    2、将用户登录的id进行一定的移位运算,或者其余计算,也就是说其实不是真正的题目随机不一样,其实是伪随机。就像加密和解密一样,用户id就是密钥

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月5日
  • 已采纳回答 10月28日
  • 创建了问题 9月30日

悬赏问题

  • ¥15 在arcgispro中导出gdb文件无法在python中读取
  • ¥15 千牛PC端客服工作台的Js调用成品或定制
  • ¥20 在同一个包中,无法引用自己创建的类,换台电脑又可以
  • ¥15 各位帮我看看为什么我写的代码按钮按了没有反应,deveco studio,
  • ¥20 云南省制造业对经济增长的影响目录应该怎么罗列,就是现状那部分
  • ¥15 求一套完整的纵横四海程序。
  • ¥20 AD7606采集到电压乱飘,怎么解决呢
  • ¥60 有没有人查监控方面厉害的呢
  • ¥15 绑住完成C语言的任务
  • ¥20 vue项目打包Android apk,实现小说文本朗读功能