Rumah  >  Artikel  >  hujung hadapan web  >  Program JavaScript untuk mencari purata julat dalam tatasusunan

Program JavaScript untuk mencari purata julat dalam tatasusunan

WBOY
WBOYke hadapan
2023-09-15 11:09:081238semak imbas

JavaScript 程序求数组中的范围平均值

Memandangkan tatasusunan nombor dan julat, matlamatnya adalah untuk mengira purata semua nombor dalam julat. Masalah ini boleh diselesaikan dalam pelbagai cara, tetapi dalam tutorial ini kami akan meneroka penyelesaian yang mudah tetapi berkesan menggunakan JavaScript. Kami mula-mula akan mentakrifkan masalah dengan lebih terperinci, termasuk contoh bagaimana fungsi itu harus berfungsi. Kami kemudiannya akan memecahkan penyelesaian langkah demi langkah, dengan penjelasan yang jelas dan coretan kod. Menjelang akhir tutorial ini, anda akan mempunyai pemahaman yang mendalam tentang cara menulis program JavaScript yang mengira purata julat dalam tatasusunan. Jadi mari kita mulakan!

Sebelum kita bermula, mari kita tentukan maksud "purata". Dalam matematik, purata (juga dipanggil min) dikira dengan menambah semua nilai dalam satu set nombor dan kemudian membahagikan jumlahnya dengan bilangan nilai. Dalam konteks tatasusunan, min julat nilai ialah purata semua nilai dalam julat.

Pernyataan Masalah

Memandangkan tatasusunan nombor dan julat yang terdiri daripada dua nombor, matlamatnya adalah untuk mengira purata semua nombor dalam julat. Julat adalah inklusif, bermakna ia harus memasukkan nombor pertama dan terakhir dalam julat. Fungsi harus mengambil sebagai input tatasusunan dan julat dan output purata nombor dalam julat. Jika tatasusunan input kosong, fungsi harus mengembalikan null. Fungsi ini juga harus mengembalikan nol jika julat tidak sah (iaitu nombor pertama lebih besar daripada nombor kedua). Output hendaklah nombor titik terapung dengan dua tempat perpuluhan.

Mari kita fahami ini dengan beberapa contoh -

Contoh 1

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

Dalam contoh 1, kami mempunyai tatasusunan nombor [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] dan julat [3, 7]. Purata julat [3, 4, 5, 6, 7] ialah 5.00, jadi output hendaklah 5.00.

Contoh 2

Input: Array: [2, 4, 6, 8, 10, 12]
   Range: [1, 5]
Output: Mean of range [2, 4, 6, 8, 10] is 6.00

Dalam contoh 2, kami mempunyai tatasusunan nombor [2, 4, 6, 8, 10, 12] dan julat [1, 5]. Purata julat [2, 4, 6, 8, 10] ialah 6.00, jadi output hendaklah 6.00.

Contoh 3

Input: Array: [3, 5, 7, 9, 11, 13]
   Range: [7, 3]
Output: null

Dalam contoh 3, julat [7, 3] adalah tidak sah kerana nombor pertama adalah lebih besar daripada nombor kedua, jadi output sepatutnya nol.

Contoh 4

Input: Array: []
   Range: [1, 5]
Output: null

Dalam contoh 4, tatasusunan input kosong, jadi output juga harus kosong.

Sekarang mari kita fahami algoritma untuk penyataan masalah di atas.

Algoritma

Langkah 1 - Tentukan fungsi "meanInRange" yang mengambil dua parameter: tatasusunan "arr" dan julat "julat".

Langkah 2 - Semak sama ada panjang tatasusunan input "arr" ialah sifar. Jika ya, mengembalikan null.

Langkah 3 - Pecahkan julat tatasusunan "julat" kepada dua pembolehubah "mula" dan "akhir".

Langkah 4 - Semak sama ada nilai "mula" lebih besar daripada "akhir". Jika ya, mengembalikan null.

Langkah 5 - Gunakan kaedah "slice" untuk mengekstrak subarray daripada tatasusunan input "arr" yang mengandungi hanya elemen antara indeks mula dan indeks akhir julat yang diberikan.

Langkah 6 - Kira jumlah semua elemen dalam subarray menggunakan kaedah "kurangkan".

Langkah 7 - Bahagikan jumlah dengan panjang subarray untuk mendapatkan purata.

Langkah 8 - Mengembalikan purata sebagai rentetan yang diformatkan kepada dua tempat perpuluhan, bersama-sama dengan mesej yang menunjukkan julat nilai yang digunakan untuk mengira purata.

Langkah 9 - Tamatkan fungsi.

Sekarang marilah kita memahami algoritma ini melalui contoh pelaksanaannya menggunakan JavaScript.

Contoh

Dalam pelaksanaan ini, kami mentakrifkan fungsi "meanInRange" yang menerima tatasusunan "arr" dan julat "julat" sebagai input. Fungsi pertama menyemak sama ada tatasusunan input kosong atau jika julat tidak sah, dan mengembalikan nol jika mana-mana syarat adalah benar. Jika tidak, ia memotong tatasusunan input untuk mendapatkan julat, menggunakan "mengurangkan" untuk mengira jumlah nombor dalam julat dan mengira purata. Akhir sekali, fungsi ini mencatatkan purata, dibundarkan kepada dua tempat perpuluhan, ke konsol menggunakan "console.log".

Kami kemudian memanggil fungsi "meanInRange" dengan tatasusunan dan julat input yang berbeza untuk menguji kefungsiannya dan mencetak output ke konsol.

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"

Kesimpulan

Dalam tutorial ini, kami meneroka cara mencari purata siri nilai dalam tatasusunan menggunakan JavaScript. Kami membincangkan penyataan masalah dan menyediakan algoritma dan program JavaScript yang menyelesaikan masalah. Kami juga mempelajari beberapa contoh penggunaan dan cara mengendalikan kes tepi seperti tatasusunan kosong atau julat tidak sah. Dengan mengikuti pendekatan ini, anda boleh mengira purata satu siri nilai dengan mudah dalam tatasusunan dalam program JavaScript.

Atas ialah kandungan terperinci Program JavaScript untuk mencari purata julat dalam tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam