Bonjour,

J'ai un calcul a faire qui es selon le nombre d'itération une addition. Elle additionne la valeur de départ a elle même + 100. et ainsi de suite.

Je suis très novice, j'ai essayé ce bout de code JS mais sans succès.
Dans mon exemple le résultat final devrait être 2700.
Des idée ?

const leveldepart = 1000;
const levelfin = 1003;
const abc = levelfin-leveldepart;
var xplvl = 700;
for (let pas = 0; pas < abc; pas++) {
	var xplvl = xplvl++ + 100;
	console.log(xplvl);
}
console.log(xplvl);


Cordialement
Jérôme
Salut,

Ce n'est pas ce que tu cherches à faire - car je ne sais par quel moyen tu veux arriver à 2700 -, mais déjà :
const leveldepart = 1000;
const levelfin = 1003;
const abc = levelfin - leveldepart; // => 3
let xplvl = 700; // pas de "var", jamais au grand jamais, c'est une ancienne déclaration source de bugs.
for (let i = 0; i < abc; i++) { // abc == 3, donc la boucle s'executera 3 fois (0, 1, 2).
	xplvl = xplvl + 100; // il ne faut pas redéclarer la variable "xplvl", c'est déjà fait plus haut.
}
console.log(xplvl);
Merci oué c'est flou pour moi.
Là dans ton code çà donne 1000.

En gros voilà le principe de départ. (C'est pour un jeu)
Le joueur es au level 1000.
Pour atteindre le level 1001 il lui faut gagner 800 d'expérience (xp)
Pour passer du 1001 au 1002 c'est 900
1003 c'est 1000.

Mais bon but es de pouvoir calculer le tout. Donc du level 1000 au level 1003. Ce qui fait un total de 2700.

Cdt Jérôme
Ah oui c'est plus clair. Il manquait une variable :
const begin = 1000;
const end = 1003;
const dif = end - begin;
let xp = 800;
let levelXp = 0;
for (let i = 0; i < dif; i++) {
  levelXp += xp;
  xp += 100;
}

console.log(levelXp);


// notons que :
levelXp += xp;
// est un raccourci pour :
levelXp = levelXp + xp;

Modifié par Olivier C (18 Jun 2023 - 22:57)
Meilleure solution
Ah ouiii Merci

Je l'avait complètement oublié ce '+=', déjà que je connait presque rien. Smiley cligne Smiley biggrin
Et sans parler de mon approche du calcul.

Merci beaucoup Smiley prie