這是7年前的Ethan,當時才二年級:
時光飛逝,現在他已經九年級了。這兩張照片是他破解木質智力遊戲前後拍攝的。幾個月前我回國時我給了他這個小禮物。
快進到 2025.05.09。今天,在 Ethan 的 1 對 1 數學課上,我請他隨意寫下兩個數字,在 TextEdit 裏,作為我們要開始計算 GCD(最大公約數)的素材。
他略帶攻擊性地選了不小的兩個數:675 和 534。
“我大概還記得怎麽做。”他說著,但屏幕還是一片白。他在拚命回憶,但還是卡住了。
過了一會兒,他打開 Slack,回頭翻看我們上次課的記錄 —— 有了。他的腦子和手開始聯動了。
很快,他一步步地寫出如下計算過程,直到最後得到 gcd = 3:
675 = 1*534 + 141
534 = 3*141 + 111
141 = 1*111 + 30
111 = 3*30 + 21
30 = 1*21 + 9
21 = 2*9 + 3
9 = 3*3 + 0
```
此時我引入新的挑戰:解線性丟番圖方程 675x + 534y = 3
Ethan 頓時懵住了。
我開始引導他:我們可以把剛才的步驟從下往上倒推,在每一行右邊記錄下當前這一步的表達式。比如最後那一步是:
3 = 21 - 2*9
下一步再帶入前一步中 9 的表達式,就變成了:
3 = 21 - 2*(30 - 1*21) = 3*21 - 2*30
我幫他走了兩步,並解釋我們要幹嘛:我們想知道,是多少個 675 和多少個 534 加起來能得 3?
我還故意“劇透”了一點:“你隻要撐過前幾步,後麵就能像搭積木一樣逐步搭上去。”
他繼續往上走,並開始把每一行的線性組合複製粘貼到計算器裏驗證。**我沒想到,他竟然找到了一個如此機智的方式!**
我們原本的表達式最後算出來是:
-17*675 + 19*534 = -11475 + 10146 = -1329 ≠ 3
我鼓勵他說:“你可以直接把表達式複製進計算器檢查每一步是不是 3,這樣效率高多了。”
但他比我預想得還聰明。他每走一步,就粘貼驗證是不是 3。一旦哪一步出錯,馬上就能找出來!
最後,他找到了 bug:他在寫某一行類似於 `-11*141 + 14(534 - 3*141)` 的時候,忘記了把 14 乘進去的第二項。他經常在第二項裏漏掉前麵的係數。
這個 bug 讓我們花了不少時間才定位到。
我忍不住打趣:“哎呀,這種疏忽是三四年級就會做的錯誤,哈哈!”
他一邊笑一邊說:“哦哦哦,原來是這裏!”
我跟上:“那請掐自己一下腿吧。”
我們這一課,真的是笑點滿滿,知識點也滿滿。
Ethan 最後得到了正確答案:
x = -53, y = 67
而他的 TextEdit 文本如下(原汁原味複製自他的筆記):
gcd of 675 and 534
675 = 1*534 + 141
534 = 3*141 + 111
141 = 1*111 + 30
111 = 3*30 + 21
30 = 1*21 + 9
21 = 2*9 + 3 <==(675, 534)
9 = 3*3 + 0
675x + 534y = 3
gcd of 675 and 534
675 = 1*534 + 141 = 14*534 + -53(675-1*534) = -53*675 + 67*534
534 = 3*141 + 111 = -11*141 + 14(534-3*141) = 14*534 + -53*141
141 = 1*111 + 30 = 3*111 + -11(141-1*111) = -11*141 + 14*111
111 = 3*30 + 21 = -2*30 + 3(111-3*30) = 3*111 + -11*30
30 = 1*21 + 9 = 1*21 - 2(30-1*21) = -2*30 + 3*21
21 = 2*9 + 3 3 = 1*21 - 2*9
9 = 3*3 + 0
At first, we got the wrong answer
-17*675 + 19*534 = -11475 +10146 = -1329 ≠ 3
Here is something interesting – a new way to use calculator.
Starting from 1*21 - 2*9, we can copy it to the calculator.
If it is 3, we are good.
Next we copy -2*30 + 3*21 to the calculator.
If it is still 3, we are good.
...
Until the last step.
We copy -53*675 + 67*534 to the calculator.
If it is still 3, we are good.
In our case, it is 3 after we fixed the bug. :D
675x + 534y = 3
x=-53, y=6
這一課我們不隻學了數學技巧,更重要的是:我們一起經曆了疑惑、出錯、懷疑、驗證、修正、欣喜。
Ethan 展現出屬於他這個年齡的衝勁、聰明和成長中的“馬虎”。我則收獲了一場有趣的陪跑。
我想,對很多家長來說,這樣真實而豐富的課堂經曆,才是孩子進步的真正軌跡。
下次,我們來講講 Albert 的故事。