百位内加减乘除算法大赛

你一共玩了0次, 算对0次, 正确率0%

玩法

这款游戏旨在通过趣味性和竞争性相结合的方式,提高玩家的数学运算能力和反应速度。
  • 玩家打开游戏后,可以选择自由模式或计时比赛模式开始游戏。直接开始答题为自由模式,点击计时比赛按钮才会开始计时。
  • 游戏会随机生成一道百位以内的四则运算(加减乘除)题目,玩家需在输入框中输入答案,并点击提交。游戏会判断玩家的答案是否正确,并即时更新统计信息。
  • 在计时比赛模式中,时间结束后游戏会自动结束。

计时比赛说明

  1. 当玩家选择参加计时比赛时,系统将启动一分钟的倒计时。
  2. 在这一分钟内,玩家需要尽可能多地回答题目并争取全部正确。
  3. 一分钟过去后,你将不能继续计算了。但可以使用退出比赛,就可以重新参与游戏了。
  4. 跟你的同学朋友一起来比赛看谁的速度快些。

API参考

语法:

index.php?ajax=1[&nickname=[<昵称>][&act=[get_question|get_new_question|clear|game|out]][&result=<数字>]

Get/Post ajax 固定值为 1

Get/Post nickname 昵称:

用于标识不同用户的昵称。在请求中指定nickname可以确保服务器能够区分来自不同用户的请求,尤其是在处理如答题记录、比赛状态等与用户特定信息相关的操作时。如果未指定nickname,则系统采用默认用户身份处理请求。

Get act 操作类型:

  • get_question:获取当前问题(复述一遍当前状态)
  • get_new_question:获取新的问题(换一道题,并复述当前状态)
  • clear:清除答题记录
  • game:开始计时比赛
  • out:停止计时比赛

Post result

提交对某个问题的答案。

响应格式

{  
  "question": "1+1",  // 当前的问题 - 在每一次用户请求新问题或提交答案后,这个字段会更新为新的待答问题。因此,无论用户处于何种答题状态(包括刚刚进入答题页面、已经提交了一个答案等待反馈或正在进行计时比赛),question字段始终指向当前用户应当回答的问题,确保用户界面的即时性和准确性。
  "question_last_correctness": false,  // 上一个问题的答案是否正确,true为正确,false为错误;如果尚未开始答题,则必定为false - 这个字段的值仅在用户提交答案并收到反馈后更新。它反映的是上一次回答的问题的正确性,而不是当前用户正在回答或即将回答的问题的正确性。
  "game_time_left_seconds": 0,  // 计时比赛中剩余的时间(秒)。在非计时模式下,此值为0,且当此值为0时,必须当作游戏模式为"freeplay"
  "game_mode": "freeplay",  // 当前的游戏模式,"freeplay"表示不计时(自由答题),“tinming” 表示计时。
  "stat_total_count": 0,  // 总共回答的问题数量
  "stat_correct_count": 0,  // 回答正确的问题数量
  "stat_correct_rate": 0  // 正确率,已经乘以100,只需加上百分号即可展示
}

注意事项

如果要提供nickname参数的话,就要保证在之后的请求中持续提供,如果不提供,系统就会采用默认用户,继而导致返回的数据不正确。

示范

获取当前问题

Get 请求地址
index.php?ajax=1&nickname=user123&act=get_question
响应
{  
  "question": "3+3",  
  "question_last_correctness": false, 
  "game_time_left_seconds": 0,  
  "game_mode": "freeplay",  
  "stat_total_count": 0,
  "stat_correct_count": 0,  
  "stat_correct_rate": 0  
}
				

提交答案

Post 请求地址
index.php?ajax=1&nickname=user123&result=6
响应
{  
  "question": "4+4",  
  "question_last_correctness": true,
  "game_time_left_seconds": 0,  
  "game_mode": "freeplay",  
  "stat_total_count": 1, 
  "stat_correct_count": 1,  
  "stat_correct_rate": 100  
}