Maison > Article > interface Web > Programme JavaScript pour trouver la moyenne de la plage dans un tableau
Étant donné un tableau de nombres et une plage, l'objectif est de calculer la moyenne de tous les nombres de la plage. Ce problème peut être résolu de plusieurs manières, mais dans ce didacticiel, nous explorerons une solution simple mais efficace utilisant JavaScript. Nous allons d’abord définir le problème plus en détail, en incluant un exemple de la façon dont la fonction devrait fonctionner. Nous détaillerons ensuite la solution étape par étape, avec des explications claires et des extraits de code. À la fin de ce didacticiel, vous comprendrez en profondeur comment écrire un programme JavaScript qui calcule la moyenne d'une plage dans un tableau. Alors commençons !
Avant de commencer, définissons ce que signifie « moyenne ». En mathématiques, la moyenne (également appelée moyenne) est calculée en additionnant toutes les valeurs d'un ensemble de nombres puis en divisant la somme par le nombre de valeurs. Dans le contexte d'un tableau, la moyenne d'une plage de valeurs est la moyenne de toutes les valeurs de la plage.
Étant donné un tableau de nombres et une plage de deux nombres, l'objectif est de calculer la moyenne de tous les nombres de la plage. La plage est inclusive, ce qui signifie qu'elle doit inclure le premier et le dernier nombre de la plage. La fonction doit prendre en entrée un tableau et une plage et afficher la moyenne des nombres de la plage. Si le tableau d'entrée est vide, la fonction doit renvoyer null. La fonction doit également renvoyer null si la plage n'est pas valide (c'est-à-dire que le premier nombre est supérieur au deuxième nombre). Le résultat doit être un nombre à virgule flottante avec deux décimales.
Comprenons cela avec quelques exemples -
Input: Array: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Range: [3, 7] Output: Mean of range [3, 4, 5, 6, 7] is 5.00
Dans l'exemple 1, nous avons un tableau de nombres [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] et une plage [3, 7]. La moyenne de la plage [3, 4, 5, 6, 7] est de 5,00, la sortie doit donc être de 5,00.
Input: Array: [2, 4, 6, 8, 10, 12] Range: [1, 5] Output: Mean of range [2, 4, 6, 8, 10] is 6.00
Dans l'exemple 2, nous avons un tableau de nombres [2, 4, 6, 8, 10, 12] et une plage [1, 5]. La moyenne de la plage [2, 4, 6, 8, 10] est de 6,00, la sortie doit donc être de 6,00.
Input: Array: [3, 5, 7, 9, 11, 13] Range: [7, 3] Output: null
Dans l'exemple 3, la plage [7, 3] n'est pas valide car le premier nombre est supérieur au deuxième nombre, la sortie doit donc être nulle.
Input: Array: [] Range: [1, 5] Output: null
Dans l'exemple 4, le tableau d'entrée est vide, donc la sortie doit également être vide.
Comprenons maintenant l'algorithme pour l'énoncé du problème ci-dessus.
Étape 1 - Définissez la fonction "meanInRange" qui prend deux paramètres : tableau "arr" et plage "range".
Étape 2 - Vérifiez si la longueur du tableau d'entrée "arr" est nulle. Si c'est le cas, renvoie null.
Étape 3 - Déstructurez la plage du tableau "range" en deux variables "start" et "end".
Étape 4 - Vérifiez si la valeur de "start" est supérieure à "end". Si c'est le cas, renvoie null.
Étape 5 - Utilisez la méthode "slice" pour extraire un sous-tableau du tableau d'entrée "arr" qui contient uniquement les éléments entre l'index de début et l'index de fin de la plage donnée.
Étape 6 - Calculez la somme de tous les éléments du sous-tableau en utilisant la méthode "réduire".
Étape 7 - Divisez la somme par la longueur du sous-tableau pour obtenir la moyenne.
Étape 8 - Renvoie la moyenne sous forme de chaîne formatée à deux décimales, accompagnée d'un message indiquant la plage de valeurs utilisée pour calculer la moyenne.
Étape 9 - Terminez la fonction.
Comprenons maintenant cet algorithme à travers un exemple de sa mise en œuvre à l'aide de JavaScript.
Dans cette implémentation, nous définissons une fonction "meanInRange" qui accepte le tableau "arr" et la plage "range" en entrée. La fonction vérifie d'abord si le tableau d'entrée est vide ou si la plage n'est pas valide, et renvoie null si l'une des conditions est vraie. Sinon, il découpe le tableau d'entrée pour obtenir la plage, utilise « réduire » pour calculer la somme des nombres dans la plage et calcule la moyenne. Enfin, la fonction enregistre la moyenne, arrondie à deux décimales, sur la console à l'aide de "console.log".
Nous appelons ensuite la fonction « meanInRange » avec différents tableaux et plages d'entrée pour tester sa fonctionnalité et imprimer la sortie sur la console.
function meanInRange(arr, range) { if (arr.length === 0) { return null; // return null if the input array is empty } const [start, end] = range; if (start > end) { return null; // return null if the range is invalid } const rangeArr = arr.slice(start - 1, end); // slice the array to get the range const sum = rangeArr.reduce((acc, num) => acc + num, 0); // calculate the sum const mean = sum / rangeArr.length; // calculate the mean // return the mean rounded to two decimal places return `Mean of range [${rangeArr}] is ${mean.toFixed(2)}`; } // Example usage: console.log(meanInRange([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [3, 7])); // should output "Mean of range [3,4,5,6,7] is 5.00" console.log(meanInRange([2, 4, 6, 8, 10, 12], [1, 5])); // should output "Mean of range [2,4,6,8,10] is 6.00" console.log(meanInRange([3, 5, 7, 9, 11, 13], [7, 3])); // should output "null" console.log(meanInRange([], [1, 5])); // should output "null"
Dans ce tutoriel, nous avons exploré comment trouver la moyenne d'une série de valeurs dans un tableau à l'aide de JavaScript. Nous discutons de l'énoncé du problème et fournissons des algorithmes et des programmes JavaScript qui résolvent le problème. Nous avons également appris plusieurs exemples d'utilisation et comment gérer les cas extrêmes tels que les tableaux vides ou les plages non valides. En suivant cette approche, vous pouvez facilement calculer la moyenne d'une série de valeurs au sein d'un tableau dans un programme JavaScript.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!