ลูปนี้สามารถรันแบบขนานได้หรือไม่ (1)?
โค้ดต่อไปนี้จำลองเกมลูกเต๋าอย่างง่าย โดยมีกฎดังนี้:
- กำหนดค่าเริ่มต้น:
total <- 0 - ทอยลูกเต๋า 1 ลูก แล้วนำค่าที่ได้บวกเข้ากับ
total - ถ้า
totalเป็นเลขคู่ ให้รีเซ็ตtotalเป็นศูนย์ - ถ้า
totalมากกว่า 10 เกมจะจบลง
โค้ด R สำหรับเกมนี้เขียนได้ตรงไปตรงมา
total <- no_of_rolls <- 0 # Initialize
while(total < 10) {
total <- total + sample(1:6, 1)
if(total %% 2 == 0) total <- 0 # If even. Reset to 0
no_of_rolls <- no_of_rolls + 1
}
no_of_rolls
คิดว่าอัลกอริทึมนี้สามารถรันแบบขนานได้ (อย่างง่าย) หรือไม่?
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียน R Code อย่างมีประสิทธิภาพ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำจริง
เปลี่ยนทฤษฎีให้เป็นการลงมือทำด้วยแบบฝึกหัดเชิงโต้ตอบหนึ่งในของเรา
เริ่มแบบฝึกหัด