ฟังก์ชัน Rand และ RandBetween
ใช้กับ: แอปพื้นที่ทำงาน โฟลว์เดสก์ท็อป แอปแบบจำลอง Power Pages Power Platform CLI
ส่งกลับตัวเลขกึ่งสุ่ม
คำอธิบาย
ฟังก์ชัน Rand ส่งกลับตัวเลขกึ่งสุ่ม ที่มากกว่าหรือเท่ากับ 0 แต่น้อยกว่า 1 ตัวอย่างเช่น Rand() อาจส่งกลับ 0.43147 และอาจส่งกลับ 0 แต่ไม่ใช่ 1
ฟังก์ชัน RandBetween ส่งกลับจำนวนเต็มกึ่งสุ่ม (จำนวนเต็มที่ไม่มีส่วนทศนิยม) ที่อยู่ระหว่างตัวเลขสองตัวเป็นแบบรวม ตัวอย่างเช่น RandBetween( 1, 3 ) อาจส่งกลับ 1, 2 หรือ 3
ฟังก์ชันที่เปลี่ยนแปลงได้
Rand และ RandBetween เป็นฟังก์ชันที่เปลี่ยนแปลงได้ แต่ละครั้งที่ประเมินฟังก์ชัน ก็จะส่งค่าแตกต่างกันกลับมา
เมื่อใช้ในสูตรกระแสข้อมูล ฟังก์ชันที่เปลี่ยนแปลงได้จะส่งค่าที่แตกต่างกันกลับมาเท่านั้น หากมีการประเมินสูตรที่ปรากฏอีกครั้ง ถ้าไม่มีสิ่งใดเปลี่ยนแปลงในสูตรดังกล่าวจะมีค่าเดียวกันตลอดการดำเนินการของแอปของคุณ
ตัวอย่างเช่น ตัวควบคุม ป้ายชื่อ ที่มี Label1.Text = Rand() จะไม่เปลี่ยนแปลงในขณะที่แอปของคุณทำงานอยู่ การปิดและเปิดแอปอีกครั้งเท่านั้น ที่จะส่งผลให้เป็นค่าใหม่
จะมีการประเมินฟังก์ชันใหม่หากเป็นส่วนหนึ่งองสูตรที่มีการเปลี่ยนแปลงบางอย่าง ตัวอย่างเช่น ถ้าเราเปลี่ยนตัวอย่างของเราเพื่อเกี่ยวข้องกับตัวควบคุม แถบเลื่อน ด้วย Label1.Text = Slider1.Value + Rand() แล้วตัวเลขที่สุ่มใหม่ถูกสร้างขึ้นแต่ละครั้งที่เปลี่ยนแปลงค่าของตัวควบคุม แถบเลื่อน และคุณสมบัติข้อความของป้ายกำกับจะถูกประเมินอีกครั้ง ดูด้านล่างสำหรับตัวอย่างนี้
เมื่อใช้ใน สูตรลักษณะการทำงาน, Rand และ RandBetween จะถูกประเมินแต่ละครั้งที่มีการประเมินสูตรลักษณะการทำงาน ดูด้านล่างสำหรับตัวอย่าง
ไวยากรณ์
Rand()
RandBetween( Bottom, Top )
- Bottom - จำเป็น จำนวนเต็มที่น้อยที่สุดที่ฟังก์ชันสามารถส่งกลับได้
- Top - จำเป็น จำนวนเต็มที่มากที่สุดที่ฟังก์ชันสามารถส่งกลับได้ ต้องเท่ากับหรือมากกว่า Bottom
ตัวอย่าง
การใช้งานพื้นฐาน
สูตร | คำอธิบาย | ผลลัพธ์ |
---|---|---|
Rand() | ส่งกลับตัวเลขกึ่งสุ่ม ที่มากกว่าหรือเท่ากับ 0 แต่น้อยกว่า 1 | แตกต่างกันไปตามการประเมินแต่ละครั้ง เช่น 0.874252 |
Rand() * 100 | จากตัวอย่างก่อนหน้า ใช้การคูณเพื่อขยายช่วงให้มากกว่าหรือเท่ากับ 0 และน้อยกว่า 100 | แตกต่างกันไปตามการประเมินแต่ละครั้ง เช่น 78.42521 |
Int( Rand() * 100 ) | จากตัวอย่างก่อนหน้า ใช้ฟังก์ชัน Int เพื่อลบส่วนทศนิยม ซึ่งส่งผลให้จำนวนเต็มมากกว่าหรือเท่ากับ 0 และน้อยกว่า 100 | แตกต่างกันไปตามการประเมินแต่ละครั้ง เช่น 84 |
RandBetween( 0, 99 ) | จากตัวอย่างก่อนหน้า ดำเนินการแบบเดียวกันโดยใช้ฟังก์ชัน RandBetween | แตกต่างกันไปตามการประเมินแต่ละครั้ง เช่น 21 |
RandBetween( -1, 1 ) | ส่งกลับตัวเลขกึ่งสุ่มที่อยู่ระหว่าง -1 กับ 1 แบบรวม: -1, 0 หรือ 1 | แตกต่างกันไปตามการประเมินแต่ละครั้ง เช่น -1 |
แสดงตัวเลขสุ่มที่แตกต่างกันเนื่องจากการเปลี่ยนแปลงข้อมูลที่ผู้ใช้ป้อนโดย Rand
เพิ่มตัวควบคุม แถบเลื่อน และเปลี่ยนชื่อเป็น Slider1 ถ้ามีชื่ออื่น
เพิ่มตัวควบคุม ป้ายชื่อ แล้วตั้งค่าคุณสมบัติ Text เป็นสูตรนี้:
Slider1.Value + Rand()
ป้ายชื่อแสดง 50 (ค่าเริ่มต้นสำหรับตัวเลื่อน) เครื่องหมายบวกทศนิยมสุ่ม:
ในขณะที่กดแป้น Alt ค้างไว้ เปลี่ยนค่าของแถบเลื่อน
ทุกครั้งที่คุณเปลี่ยนค่าของแถบเลื่อน ส่วนทศนิยมของป้ายกำกับแสดงตัวเลขสุ่มที่แตกต่างกัน:
สร้างตารางตัวเลขสุ่มด้วย RandBetween
เพิ่มตัวควบคุม ปุ่ม และตั้งค่าคุณสมบัติ OnSelect เป็นสูตรนี้:
ClearCollect( RandomNumbers, ForAll( Sequence( 100 ), RandBetween( 1, 20 ) ))
สูตรนี้สร้างตารางหนึ่งคอลัมน์ที่ถูกใช้เพื่อทำซ้ำ 100 ครั้ง โดยให้ผลตัวเลขสุ่ม 100 ครั้ง
เพิ่ม Data table ตั้งค่าคุณสมบัติ Items เป็น RandomNumbers และแสดงฟิลด์ ค่า
ในขณะที่กดแป้น Alt ค้างไว้ เลือกปุ่ม โดยคลิกหรือแตะ
ตารางข้อมูลแสดงตัวเลขสุ่ม 100 หนึ่งร้อยตัวระหว่าง 1 ถึง 20:
เลือกปุ่มอีกครั้งเพื่อแสดงรายการของตัวเลขสุ่มที่แตกต่างกัน:
ในการสร้างตัวเลขสุ่มตัวเดียวแทนตาราง ให้ใช้ Set( RandomNumber, Rand() ) หรือ Set( RandNumber, RandBetween( 1, 20 ) )