Google Apps Script:
การสร้างตัวเลขสุ่ม
วิธีการ:
ใน Google Apps Script, คุณสามารถสร้างตัวเลขสุ่มโดยใช้ฟังก์ชัน Math.random()
เหมือนกับ JavaScript ฟังก์ชันนี้จะส่งคืนตัวเลขทศนิยมสุ่ม (pseudo-random) ในช่วง 0 (รวม) ถึง 1 (ไม่รวม) เพื่อปรับตัวเลขเหล่านี้ให้เหมาะกับกรณีการใช้งานที่หลากหลาย เช่น การสร้างจำนวนเต็มภายในช่วงเฉพาะ คุณอาจต้องทำการคำนวณเพิ่มเติม
การสร้างตัวเลขสุ่มพื้นฐาน
ในการสร้างตัวเลขสุ่มง่าย ๆ และบันทึกลงในคอนโซล:
function generateRandomNumber() {
var randomNumber = Math.random();
Logger.log(randomNumber);
}
ผลลัพธ์ตัวอย่าง: 0.1234567890123456
การสร้างจำนวนเต็มภายในช่วงเฉพาะ
เพื่อสร้างจำนวนเต็มสุ่มระหว่างค่าสองค่า (min
และ max
), รวมทั้งสองค่า:
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min;
Logger.log(randomNumber);
return randomNumber;
}
// ตัวอย่าง:
getRandomInt(1, 10);
ผลลัพธ์ตัวอย่าง: 7
จำไว้ว่า, ฟังก์ชัน Math.ceil()
ใช้สำหรับปัดค่าน้อยที่สุดขึ้น, และ Math.floor()
ใช้สำหรับปัดค่ามากที่สุดลง, เพื่อให้แน่ใจว่าตัวเลขสุ่มอยู่ในช่วงที่ระบุไว้
ภาพรวม
กลไกสำหรับการสร้างตัวเลขสุ่มใน Google Apps Script, และในภาษาการเขียนโปรแกรมส่วนใหญ่, ใช้เครื่องมือสร้างตัวเลขสุ่มเทียม (PRNG) หลักการนี้เป็นแบบกำหนดได้และอาศัยค่าเริ่มต้น, ที่เรียกว่าเมล็ด, เพื่อผลิตลำดับของตัวเลขที่ดูเหมือนว่าสุ่ม แม้ว่าจะเพียงพอสำหรับการใช้งานหลายประเภท, สำคัญที่จะทราบว่าตัวเลขสุ่มเทียมอาจไม่เหมาะสำหรับที่ต้องการความปลอดภัยสูงหรือต้องการความสุ่มแท้จริง เช่น ในการประยุกต์ใช้งานที่เกี่ยวข้องกับการเข้ารหัส
ความสุ่มที่แท้จริงสามารถบรรลุได้ผ่านเครื่องกำเนิดตัวเลขสุ่มฮาร์ดแวร์หรือบริการที่สร้างความสุ่มจากปรากฏการณ์ธรรมชาติ อย่างไรก็ตาม, สำหรับความต้องการการเขียนสคริปต์ประจำวันส่วนใหญ่ใน Google Apps Script, Math.random()
เพียงพอแล้ว
ในอดีต, ความพยายามในการหาเทคนิคการสร้างตัวเลขสุ่มที่มีประสิทธิภาพมากขึ้นได้นำไปสู่การพัฒนาอัลกอริทึมต่าง ๆ, โดยตัวอย่างที่น่าสนใจ ได้แก่ Mersenne Twister และ Linear Congruential Generator (LCG) อย่างไรก็ตาม, เนื่องจากระดับการแสดงออกที่สูงใน Google Apps Script, ผู้ใช้ส่วนใหญ่อาจไม่จำเป็นต้องใช้งานอัลกอริทึมเหล่านี้โดยตรง แต่การเข้าใจหลักการพื้นฐานสามารถช่วยในการชื่นชมความสำคัญและข้อจำกัดของการสร้างตัวเลขสุ่มในสคริปต์ของคุณ