Compteur avec pas et réinitialisation via fermeture

JavaScript Medium closures

Tâche «Compteur avec pas et réinitialisation via fermeture»

Implémentez la fonction createCounter, qui prend une valeur initiale start et un pas step. La fonction doit retourner un objet avec trois méthodes : increment() — augmente la valeur actuelle de step et la retourne, decrement() — diminue de step et la retourne, reset() — réinitialise la valeur à la valeur initiale start. Utilisez des fermetures pour stocker l'état. La valeur initiale start et le pas step sont des nombres entiers.

Format d\ entrée

Première ligne : start (nombre entier). Deuxième ligne : step (nombre entier). Troisième ligne : nombre d'appels n (nombre entier, 1 ≤ n ≤ 20). Ensuite n lignes, chacune contient une commande : 'increment', 'decrement' ou 'reset'.

Format de sortie

Pour chaque commande, affichez la valeur actuelle du compteur après exécution de la commande, chacune sur une nouvelle ligne.

Exemples

Exemple 1

ENTRÉE
10 3 3 increment increment decrement
SORTIE
13 16 13

Exemple 2

ENTRÉE
-5 2 4 decrement decrement increment reset
SORTIE
-7 -9 -7 -5

Exemple 3

ENTRÉE
5 4 6
SORTIE
78.54 24.00
main.js