米老鼠偷糖果

分析问题

想象一下,米老鼠发现了厨房里有好多糖果!总共有 ( n ) 颗糖果。它每次偷糖果时,都会背走 ( a ) 颗(比如每次背 2 颗)。它一共偷了 ( x ) 次(比如偷了 3 次)。题目说偷了 ( x ) 次后,一定还有糖果剩下,所以我们不用担心糖果不够的问题。

建立模型

要计算偷完后还剩下多少糖果,我们可以这样想:

  1. 先算米老鼠总共偷走了多少糖果:每次偷 ( a ) 颗,偷了 ( x ) 次,所以总偷走量是 ( a * x )(乘法)。
  2. 再算剩下的糖果:原来有 ( n ) 颗,减去偷走的部分,就是剩下的。所以公式是:
    剩余糖果} = n – (a * x)

举个例子(用题目给的样例):

  • 输入:12 颗糖果(n = 12 ),每次背 2 颗(a = 2 ),背了 3 次(x = 3 )。
  • 总偷走:( 2 * 3 = 6 ) 颗。
  • 剩余:( 12 – 6 = 6 ) 颗。
  • 输出:6。

这个模型很简单,就像你有一堆糖果,每次拿走一些,拿了几次后算剩下多少。五年级的小朋友可以自己用小数字试试看哦!

编写 C++ 程序

根据上面的模型,我们写一个简单的程序。程序会读取三个整数 ( n )、( a )、( x ),然后计算并输出剩余的糖果数量。

#include <bits/stdc++.h>
using namespace std;
int main() {
    // 定义变量:n 是总糖果数,a 是每次背走的糖果数,x 是背的次数
    int n, a, x;
    // 从输入读取三个整数
    cin >> n >> a >> x;
    // 计算剩余糖果:剩余 = 总糖果 - (每次背的 × 次数)
    // 这里变量定义后,直接赋值 
    int remaining = n - a * x;
    // 输出剩余糖果
    cout << remaining << endl;
    return 0;
}

保存 编译 运行

程序说明

  • 输入:三个整数,用空格分开,比如 12 2 3
  • 输出:一个整数,表示偷完后剩下的糖果。
  • 注意:题目保证偷完后还有糖果剩下,所以程序不需要检查负数情况。
  • 测试:你可以用样例输入 12 2 3 测试,输出应该是 6。其他例子:
  • 输入 10 3 2(10 颗糖,每次背 3 颗,背 2 次),输出 4
  • 输入 5 1 4(5 颗糖,每次背 1 颗,背 4 次),输出 1