Modul:Math/doc

Daripada Wikipedia, ensiklopedia bebas.

Ini ialah laman pendokumenan untuk Modul:Math

Modul ini menyediakan sejumlah fungsi matematik. Fungsi-fungsi ini boleh digunakan dari #invoke atau dari modul Lua yang lain.

Gunakan dari modul Lua yang lain[sunting sumber]

Untuk menggunakan modul dari halaman wiki biasa, tiada persediaan khas yang diperlukan. Sekiranya anda menggunakan modul dari modul Lua yang lain, pertama anda perlu memuatkannya, seperti ini:

local mm = require('Modul:Math')

(mm pembolehubah berdiri untuk Modul Math; anda boleh memilih sesuatu yang lebih deskriptif jika anda suka.)

Sebilangan besar fungsi dalam modul mempunyai versi untuk Lua dan versi untuk #invoke. Ia adalah mungkin untuk menggunakan fungsi-fungsi #invoke dari modul Lua lain, tetapi menggunakan fungsi Lua mempunyai kelebihan bahawa anda tidak perlu untuk mengakses objek bingkai Lua. Fungsi Lua didahului oleh _, sedangkan fungsi #invoke tidak.

rawak[sunting sumber]

{{#invoke:math|random}}
{{#invoke:math|random|max_value}}
{{#invoke:math|random|min_value|max_value}}
mm._random()
mm._random(max_value)
mm._random(min_value, max_value)

Menghasilkan nombor rawak.

  • Jika tiada argumen (alasan yang dikemukakan) yang ditentukan, jumlah yang dihasilkan adalah lebih besar daripada atau sama dengan 0 dan kurang daripada 1.
  • Jika satu argumen diberikan, nombor yang dihasilkan adalah bilangan bulat antara 1 dan argumen itu. Argumen mestilah integer (angka bulat) positif.
  • Jika dua argumen disediakan, jumlah yang dihasilkan adalah integer antara argumen yang pertama dan kedua. Kedua-dua argumen mestilah integer, tetapi boleh menjadi negatif.

Fungsi ini tidak akan berfungsi dengan betul untuk nombor yang kurang daripada −232 dan lebih besar daripada 232 − 1. Sekiranya anda perlu menggunakan nombor di luar julat ini, disarankan agar anda menggunakan Modul:Random.

susunan[sunting sumber]

{{#invoke:math|order|n}}
mm._order(n)

Menentukan peringkat magnitud daripada nombor.

ketepatan[sunting sumber]

{{#invoke:math|precision|n}}
{{#invoke:math|precision|x=n}}
mm._precision(number_string)

Menentukan ketepatan nombor. Sebagai contoh, untuk "4" ia akan kembali ke "0", untuk "4.567" ia akan kembali ke "3", dan untuk "100" ia akan kembali ke "-2".

Fungsi ini cuba menguraikan perwakilan rentetan nombor, dan mengesan sama ada nombor itu menggunakan notasi E. Atas sebab ini, apabila dipanggil daripada Lua, nombor yang sangat besar atau nombor yang sangat tepat harus dimasukkan secara langsung sebagai rentetan untuk mendapatkan hasil yang tepat. Sekiranya mereka dimasukkan sebagai nombor, jurubahasa Lua akan mengubahnya menjadi notasi E dan fungsi ini akan mengembalikan ketepatan notasi E daripada nombor nombor asal. Ini tidak menjadi masalah apabila nombor dipanggil dari #invoke, kerana semua dimasukkan dari #invoke dalam format rentetan.

max (maksimum)[sunting sumber]

{{#invoke:math|max|v1|v2|v3|...}}
mm._max(v1, v2, v3, ...)

Mengembalikan nilai maksimum dari nilai yang ditentukan. Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

median[sunting sumber]

{{#invoke:math|median|v1|v2|v3|...}}
mm._median(v1, v2, v3, ...)

Mengembalikan median nilai dari nilai yang ditentukan. Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

min (minimum)[sunting sumber]

{{#invoke:math|min|v1|v2|v3|...}}
mm._min(v1, v2, v3, ...)

Mengembalikan nilai minimum dari nilai yang ditentukan. Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

jumlah[sunting sumber]

{{#invoke:math|sum|v1|v2|v3|...}}
mm._sum(v1, v2, v3, ...)

Mengembalikan jumlah nilai yang ditentukan. Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

purata[sunting sumber]

{{#invoke:math|average|v1|v2|v3|...}}
mm._average(v1, v2, v3, ...)

Mengembalikan purata nilai yang ditentukan. (Lebih tepatnya, nilai yang dikembalikan adalah purata aritmetik.) Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

bulat[sunting sumber]

{{#invoke:math|round|value|precision}}
{{#invoke:math|round|value=value|precision=precision}}
mm._round(value, precision)

Putaran nombor dengan ketepatan yang ditentukan.

Nota: Sehingga Oktober 2019, terdapat bug pada paparan beberapa nombor bulat. Semasa cuba membundarkan nombor yang bulat menjadi "n.0", seperti "1.02", hingga kesepuluh digit yang terdekat (i.e. |r=1), fungsi ini harus memaparkan "1.0", tetapi secara ia tidak disangka-sangka memaparkan "1". Sebagai ganti, gunakan parameter |precision_format=.

log10[sunting sumber]

{{#invoke:math | log10 | x}}
mm._log10(x)

Mengembalikan log10(x), Logaritma x menggunakan asas 10.

mod[sunting sumber]

{{#invoke:math|mod|x|y}}
mm._mod(x, y)

Mendapatkan x modulo y, atau selebihnya selepas x telah dibahagi oleh y. Ini adalah tepat untuk integer sehingga 253; untuk integer yang lebih besar, operator modulo Lua boleh mengembalikan nilai yang salah. Fungsi ini berkait dengan masalah ini dengan mengembalikan 0 jika modulo yang diberikan oleh pengendali modulo Lua adalah kurang dari 0 atau lebih besar daripada y.

gcd[sunting sumber]

{{#invoke:math|gcd|v1|v2|...}}
mm._gcd(v1, v2, ...)

Menemui faktor sepunya terbesar nilai yang ditentukan. Nilai yang tidak dapat ditukar menjadi nombor adalah diabaikan.

ketepatan_format[sunting sumber]

{{#invoke:math|precision_format|value_string|precision}}
mm._precision_format(value_string, precision)

Membundarkan nombor ke ketepatan dan format yang ditentukan mengikut peraturan yang awalnya digunakan untuk {{Rnd}}. Output adalah rentetan.

Ketepatan parameter hendaklah berupa integer. Nilai negatif dibenarkan. Bukan-integer memberikan hasil yang tidak dijangka

  • 1,234.567
  • 2: 1,234.57
  • −2: 1,200
  • 2.5: 1,234.5658476404
  • −2.5: 1,264.9110640674

cleanNumber[sunting sumber]

local number, number_string = mm._cleanNumber(number_string)

Fungsi pembantu yang boleh dipanggil dari modul Lua lain, tetapi bukan dari #invoke. Ini mengambil rentetan atau nilai angka sebagai input, dan jika nilainya dapat ditukar menjadi angka, cleanNumber mengembalikan nombor dan rentetan nombor. Sekiranya nilainya tidak dapat ditukar menjadi nombor, cleanNumber kembali kepada nil, nil.

Lihat juga[sunting sumber]