程序员的知识教程库

网站首页 > 教程分享 正文

DeepSeek用137秒生成课堂互动游戏,手把手教你怎么操作

henian88 2025-03-05 16:17:32 教程分享 76 ℃ 0 评论

随着AI时代的到来,课堂教学更具创新性和挑战性,以前要花费很多时间制作的课件和课堂互动游戏,现在简简单单就能秒生成,大大提高了课堂教学效率和学生的积极性,解放老师的双手,给孩子换来更多直观有趣的体验。

今天用了最近火爆的deepseek尝试生成可以直接运行的课堂互动小游戏代码,用了几次的尝试,deepseek经过37秒的构架,25秒的更改,137秒的生成时间,最后完成了一个关于数学中“通分练习”的小游戏。

下面展示下我输入的口令和生成的代码运行情况:

第一次指令:帮我设计一个网页版关于通分练习的游戏。

25秒思考后,给出了游戏框架设计和核心玩法设计代码,但是对于代码小白的老师们,一定晕头转向的,还是不够直接,需要更明确的指令。

游戏框架设计:graph TD
    A[开始界面] --> B[教学模式]
    B --> C{关卡选择}
    C --> D[森林关卡-分母10以内]
    C --> E[沙漠关卡-分母20以内]
    C --> F[海洋关卡-分母100以内]
    D/E/F --> G[BOSS战-混合分母]
    G --> H[成绩报告]
核心算法代码:// 生成题目
function generateQuestion(level) {
  const maxDenominator = [10, 20, 100][level-1];
  let denominators = [];
  while(new Set(denominators).size < 2) {
    denominators = [getRandomInt(2, maxDenominator), getRandomInt(2, maxDenominator)];
  }
  return {
    fractions: [
      { numerator: getRandomInt(1, denominators[0]-1), denominator: denominators[0] },
      { numerator: getRandomInt(1, denominators[1]-1), denominator: denominators[1] }
    ],
    lcm: calculateLCM(...denominators)
  };
}

// 计算最小公倍数
function calculateLCM(a, b) {
  return (a * b) / calculateGCD(a, b);
}

第二次指令:将以上代码直接给出网页代码。这是deepseek会结合你上边的提问直接给出设计思路和网页版代码,为什么用网页版代码呢?因为它最直接最简单,非常容易操作,直接复制到txt文件中,更改后缀名为html即可打开网页开始游戏。




    
    通分大挑战 - 完整版
    


    

通分全能王

公共分母:
第一个分子:
第二个分子:

当前得分:0

已解答:0

<script> let currentQuestion = null; let score = 0; let questionCount = 0; // 生成题目 function generateQuestion() { let deno1, deno2; do { deno1 = Math.floor(Math.random() * 10) + 2; deno2 = Math.floor(Math.random() * 10) + 2; } while (deno1 === deno2 || gcd(deno1, deno2) === 1); currentQuestion = { fractions: [ { num: Math.floor(Math.random() * (deno1-1)) + 1, deno: deno1 }, { num: Math.floor(Math.random() * (deno2-1)) + 1, deno: deno2 } ], lcm: lcm(deno1, deno2) }; document.getElementById('frac1').innerHTML = `${currentQuestion.fractions[0].num}

${deno1}`; document.getElementById('frac2').innerHTML = `${currentQuestion.fractions[1].num}

${deno2}`; } // 检查答案 function checkAnswer() { const cd = parseInt(document.getElementById('common-denominator').value); const ans1 = parseInt(document.getElementById('ans1').value); const ans2 = parseInt(document.getElementById('ans2').value); const validCD = cd === currentQuestion.lcm; const validAns1 = ans1 === currentQuestion.fractions[0].num * (cd / currentQuestion.fractions[0].deno); const validAns2 = ans2 === currentQuestion.fractions[1].num * (cd / currentQuestion.fractions[1].deno); if (validCD && validAns1 && validAns2) { score += 20; document.getElementById('question').classList.add('correct'); setTimeout(() => document.getElementById('question').classList.remove('correct'), 500); } else { document.getElementById('question').classList.add('wrong'); setTimeout(() => document.getElementById('question').classList.remove('wrong'), 500); } document.getElementById('score').textContent = score; document.getElementById('count').textContent = ++questionCount; // 清空输入并生成新题 document.getElementById('common-denominator').value = ''; document.getElementById('ans1').value = ''; document.getElementById('ans2').value = ''; generateQuestion(); document.getElementById('common-denominator').focus(); } // 显示提示 function showHint() { const steps = [ "步骤1:找出两个分母的最小公倍数", `提示:${currentQuestion.fractions[0].deno} 和 ${currentQuestion.fractions[1].deno} 的最大公约数是 ${gcd(currentQuestion.fractions[0].deno, currentQuestion.fractions[1].deno)}`, "步骤2:用原始分子 × (公分母 ÷ 原分母)" ]; alert(steps.join('\n\n')); } // 数学函数 function gcd(a, b) { return b ? gcd(b, a % b) : a; } function lcm(a, b) { return (a * b) / gcd(a, b); } // 初始化游戏 generateQuestion(); document.getElementById('common-denominator').focus(); // 回车键支持 document.addEventListener('keypress', (e) => { if (e.key === 'Enter') checkAnswer(); }); </script>

运行代码结果如图:

经过试运行游戏,可操作性和趣味性都比较不错。在实际使用时,教师可以根据自己的需求进行提问,复制代码即可,操作十分简单,你的个性化需求都能得到满足,课堂互动也可以变的生动有趣,提高学生的学习积极性,感谢AI时代给我们教师带来的福利。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表