【果果编程课】002 变量的魔法盒子 —— 用小天才电话手表来算攒钱时间

课程目标

  • 学会什么是变量(就像小盒子,可以装数字、文字)
  • 用变量存“手表价格”和“我的钱”
  • 算一算:还要攒多久才能买最新款小天才电话手表?

最新款小天才手表价格(2026年1月参考)

小天才的旗舰款目前主要是 Z11(哪吒定制/少年版)或 Z10 升级系列,官方/主流电商价格大约在 2299–2399元 左右(不同颜色/IP联名款略有浮动)。我们用 2399元 作为最新款示例(很酷的视频通话 + 精准楼层定位 + 健康检测)。

完整代码(#lang at-exp racket + infix,全部英文变量)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#lang at-exp racket
(require infix)

; 第一步:定义变量(就像给小盒子贴标签,放东西进去)
(define watch_price 2399) ; 最新款小天才电话手表价格(元)
(define my_money 800) ; 我现在有的零花钱(元)
(define weekly_save 50) ; 每周能攒的钱(元)
(define weeks_needed 3)

; 第二步:用 infix 计算还要多少周(注意用 | | 包住有 - 的变量名)
@${ weeks_needed := (|watch_price| - |my_money|) / |weekly_save| }

; 直接 define 计算结果(最推荐给小朋友)
;(define weeks_needed
; (/ (- watch_price my_money) weekly_save))

; 显示结果
(display "最新小天才手表价格是: ")
(displayln watch_price)

(display "我现在有: ")
(displayln my_money)

(display "每周攒: ")
(displayln weekly_save)

(display "还要攒大约 ")
(display (ceiling weeks_needed)) ; ceiling = 向上取整,实际要买得攒够整周
(display " 周!")

; 额外:显示精确小数
(display " (精确是 ")
(display (exact->inexact weeks_needed))
(displayln " 周)")

运行后可能的输出(假设例子数字)

1
2
3
4
5
最新小天才手表价格是: 2399
我现在有: 800
每周攒: 50
还要攒大约 32 周!
(精确是 31.98 周)

解释给小朋友(上课可以说)

  • define 就像“创建一个小盒子,叫 watch_price,里面放 2399”
  • 变量名用英文(snake_case 或 camelCase 都可以),避免中文或 - 符号引起麻烦
  • := 是赋值(在 infix 里很方便)
  • ceiling 是“向上取整” → 因为你不能攒 31.98 周,必须等到第 32 周才能买哦!

练习小任务(给果果们)

  1. watch_price 改成 1999(Z9 或其他款),重新跑跑看要几周?
  2. 如果每周攒 100 元,会快很多吗?改改 weekly_save 试试!
  3. 想买更贵的 2899 元联名款?改价格再算算!
1
2
3
4
5
6
7
#lang racket

(define watch_price 2299) ; 最新款小天才电话手表价格(元)
(define my_money 800) ; 我现在有的零花钱(元)
(define weekly_save 150) ; 每周能攒的钱(元)

(/ (- watch_price my_money) weekly_save)
果果编程第2课

这样第二课就很有趣啦~既有变量概念,又贴近生活(小天才手表是小学生超爱的话题)。如果想加图片或改成其他价格,随时告诉我哦!加油果果们!🚀