public class ScoreManager { /** * Calcule le score selon le nombre d’erreurs (errors), le temps écoulé en ms, et la difficulté. * Score de base dépend de la difficulté, puis on pénalise par erreurs et temps. */ public static int calculateScore(int errors, long elapsedMillis, String difficulty) { int base; switch (difficulty) { case "Easy" : base = 1000; case "Medium" :base = 1500; case "Hard" : base = 2000; default : base = 1000; } int errorPenalty = errors * 100; int timePenalty = (int)(elapsedMillis / 1000); // en secondes int score = base - errorPenalty - timePenalty; if (score < 0) score = 0; return score; } }