🛍️ 商店折扣 · Scratch 编程题
🛍️

编程题 · 商店折扣

💰 两种优惠选一种 · 算出付钱最少的金额

📖 题目描述 题意

小杨去商店买东西,商店老板给了他两种优惠方式,只能选用一种。

  • 第一种:满额减钱
    规则:如果买东西的总价钱达到或超过 x 元,就可以立刻减掉 y 元。
    注意,这个优惠只能用一次。比如,规定“满 10 元减 3 元”,如果你买了 33 元的东西,也只能减 3 元,最后付 30 元。
  • 第二种:直接打折
    规则:所有东西直接按 n 折计算。打 n 折的意思就是,原来卖 10 元的东西, 现在只卖 n 元(因为 n 折就是原价的 n / 10)。

小杨选好了一些东西,总价是 p 元,默认小猫角色和白色背景, 编写程序帮他算一算,用哪种优惠方式付的钱更少,为多少元?最后输出的答案存入变量 ans 中。

📥 输入描述 变量

  • 新建变量 x:满减优惠的门槛金额
  • 新建变量 y:满减优惠的减免金额(1 ≤ y < x ≤ 100)
  • 新建变量 n:打折优惠的折扣力度(1 ≤ n < 10)
  • 新建变量 p:商品总价(1 ≤ p ≤ 100)

📤 输出描述 结果

新建变量 ans,用于存储最后的结果(两种优惠方式中付钱更少的金额)。

📊 优惠方式对照 对照表

优惠方式 条件 应付金额
满额减钱 p ≥ x p - y
直接打折 任意 p × n ÷ 10
最终结果 两种方式 取较小值

🔍 样例解释 样例

输入: x = 8 y = 7 n = 2 p = 11

  • 打折优惠:11 × 2 ÷ 10 = 2.2 元
  • 满减优惠:因为 11 > 8,所以 11 - 7 = 4 元
  • 比较:2.2 < 4,所以选择打折,最终付 2.2 元

输出: ans = 2.2

另一组样例:
输入:x = 8 y = 7 n = 9 p = 10
打折:10 × 9 ÷ 10 = 9 元;满减:10 > 8,10 - 7 = 3 元。取较小值 3 元。
输出:ans = 3

⚠️ 注意事项 必读

  1. 变量名的拼写(包括大小写)要和题目完全一致。
  2. 输入变量直接赋值即可,无需使用“询问并等待”积木块。
  3. 输出结果存放在对应变量中即可,无需使用“说…”或“说…,2秒”积木块。
🧩 图形化编程二级 · 2025年09月 · 编程题 1
🛍️ 商店折扣