带步进和重置功能的计数器(通过闭包实现)

JavaScript Medium closures

任务 «带步进和重置功能的计数器(通过闭包实现)»

实现一个函数 createCounter,它接收初始值 start 和步长 step。该函数应返回一个包含三个方法的对象:increment() —— 将当前值增加 step 并返回它,decrement() —— 将当前值减少 step 并返回,reset() —— 将值重置为初始值 start。使用闭包来存储状态。初始值 start 和步长 step 均为整数。

输入格式

第一行:start(整数)。第二行:step(整数)。第三行:调用次数 n(整数,1 ≤ n ≤ 20)。接下来 n 行,每行包含一条命令:'increment'、'decrement' 或 'reset'。

输出格式

对于每条命令,输出执行后计数器的当前值,每个值占一行。

示例

示例 1

输入
10 3 3 increment increment decrement
输出
13 16 13

示例 2

输入
-5 2 4 decrement decrement increment reset
输出
-7 -9 -7 -5

示例 3

输入
5 4 6
输出
78.54 24.00
main.js