C'est de l'algorithmique basique, quel sont tes supports de cours ou tutoriels utilisés?
Normalement, si ce que tu utilises est bien fait, tu devrais avoir vu juste avant les instructions "if else" (le minimum requis pour résoudre cet exercice): https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Instructions/if...else .
Sinon pour en revenir à l'exercice, un exemple de solution simple :
// on incrémente en premier les secondes
secondes = secondes + 1;
// On vérifie qu'on a pas dépassé les 59 sec
if (secondes > 59) {
secondes = 0;
minutes = minutes + 1;
// on a incrémenté les minutes, on vérifie qu'elles ne sont pas supérieures à 59 (sinon mise à 0)
if (minutes > 59) {
minutes = 0;
heures = heures + 1;
// on a incrémenté les heures, on vérifie qu'elles ne sont pas supérieures à 24 (sinon mise à 0)
if (heures > 23) {
heures = 0;
}
}
}
console.log(`heure + 1 sec : ${heures}h${minutes}m${secondes}s`);
Le code n'est pas spécialement optimisé, mais j'ai simplifié pour que ce soit plus compréhensible:
Tu peux incrémenter une valeur de plusieurs manières : heures++ , heures +=1.
Tu peux également utiliser une ternaire pour la dernière condition (https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Op%C3%A9rateurs/L_op%C3%A9rateur_conditionnel)
Remplacer :
heures = heures + 1;
// on a incrémenté les heures, on vérifie qu'elles ne sont pas supérieures à 24 (sinon mise à 0)
if (heures > 23) {
heures = 0;
}
par
heures = heures + 1 > 23 ? 0 : heures + 1;
Et dernière information, en général pour avoir du code maintenable, on essayer d'éviter d'avoir des if imbriqués pour la lisibilité du code afin qu'il soit plus lisible (mais je pense que ce n'est pas ton principal problème pour l'instant
).