为什么要学习编程?
用 Python 解决「鸡兔同笼」
一场关于思考、翻译与计算的奇妙冒险
什么是编程?
在认识 Python 之前,先想一想:我们身边那些"会自己做事"的机器,到底是怎么工作的?
点一点下面的机器,看看它们是怎么"听话"的。
那么——是谁告诉它们该怎么做的呢?
为什么要学习编程?
人也能算数,那为什么还要让计算机来帮忙?我们来比一比。
老师给你一个任务:算出 1 到 1000 之间所有偶数的和。
也就是:2 + 4 + 6 + ... + 1000 = ?
你来猜一猜:如果让你用心算,大概需要多久?
什么是未知数?
老师心里想了一个数字,你不直接知道它,该怎么办?
老师在心里想了一个数字,不告诉你。
你来猜一猜它是几?输入一个数字试试看:
什么是数学表达式?
把生活中的故事,翻译成数学能看懂的"句子"。
现在 x 是一个"未知数"——一个装着数的盒子。
我们可以用它来写"数学句子"。试一试:
什么叫等号?
"=" 不是"开始计算",它代表一个重要意思——左右两边一样多。
数学里的"="就像一个天平。两边放的东西一样重,天平就平衡。
我们来玩一玩:把下面的物品放到天平两边。
鸡兔同笼
一道流传 1500 年的数学题,今天我们用新的方式理解它。
里面有一道让无数后人思考的题目——鸡兔同笼。
如何把一个"现实故事",翻译成"数学语言"。
下有九十四足,问雉兔各几何?
翻译成今天的话就是:
笼子里有鸡和兔,一共有 35 个头,94 只脚,问鸡和兔各有多少只?
现在,我们要把这道题一步步翻译成数学语言。
题目里有什么是"我们不知道的"?
Python 来了!
人负责思考,Python 负责告诉计算机,计算机负责计算。
解决数学问题,其实是三个人在合作:
建立方程
想清楚思路
翻译成计算机
能听懂的语言
100% 准确
永远不会累
x + y = 35 和 2x + 4y = 94可是,怎么让计算机帮我们算出 x 和 y 呢?
我们需要 Python 里一个"数学魔法书"——SymPy。
SymPy 就像一本数学魔法书。
它是 Python 里的一个工具箱,专门用来解数学问题。
有了它,Python 就能看懂未知数、看懂方程,并且帮你算出答案。
里面有 3 个最重要的"魔法咒语",我们来认识它们:
就像给盒子贴上名字标签。
告诉 Python:"这两边是相等的!"
计算机瞬间就能告诉你答案!
我们用这三个咒语,来解决鸡兔同笼问题:
点击下面的按钮,一步一步看 Python 怎么"念咒语"。
完整代码
把刚才的所有咒语合在一起,就是一段完整的 Python 程序。
把鼠标移动到每一行代码上,会看到这行代码在做什么。
点击"运行"按钮,看程序一步步执行。
写代码的人,做的不是"算数",而是"把思路翻译成计算机语言"。
真正"算数"的,是计算机。
这,就是编程。
挑战关卡
换一个故事,你会发现:方程的"骨架"是一样的。
下面这些故事看起来都不一样,但其实它们都是"鸡兔同笼"的伪装!
改一改数字,看看答案怎么变。
苹果每个 4 元,香蕉每个 2 元。
问:苹果和香蕉各买了多少个?
一共有 68 个轮子。
小汽车每辆 4 个轮子,摩托车每辆 2 个轮子。
问:各有多少辆?
花了 45 元。
可乐每瓶 3 元,果汁每瓶 4 元。
问:各买了多少瓶?
共装 40 条腿。
A型每台 2 条腿,B型每台 4 条腿。
问:各有多少台?
故事千变万化,但方程的骨架是一样的:
x + y = 总数单价₁·x + 单价₂·y = 总价这就是数学建模的力量——
学会一个方法,能解决无数个问题。
思维之路
回顾我们走过的每一步,你会发现一条清晰的路径。
从"现实问题"到"得到答案",我们走过这样一条路:
告诉计算机
起一个名字
写出生活中的故事
完全一样
等式
翻译成数学
的翻译官
不知疲倦
负责想清楚
编程,是把解决问题的方法告诉计算机。
而你,是那个思考的人。
学编程,不是为了变成"打字员",
而是为了让自己拥有——
让计算机帮你解决问题的能力。
恭喜你完成课程!
你刚刚完成了一节 60 分钟的思维之旅。
比记住代码更重要的,是你学会了如何思考问题。