ข้ามไปยังเนื้อหาหลัก

ศิลปะฟิโบนาชี่

ความท้าทาย: ลำดับฟิโบนาชชีเป็นรูปแบบที่พบได้ทั่วไปในธรรมชาติ วิธีคำนวณตัวเลขในลำดับฟิโบนาชชีคือการบวกตัวเลขสองตัวก่อนหน้าเข้าด้วยกันตารางฟิโบนาชชี คือ ตารางสี่เหลี่ยมจัตุรัสที่มีความยาวด้านตามลำดับฟิ  นาชชี (ตัวอย่างเช่น 1, 1, 2, 3, 5, 8 เป็นต้น) จุดประสงค์ของกิจกรรมนี้คือการเขียนโค้ดให้หุ่นยนต์ VR สร้างเกลียวฟิโบนาชี่บนตารางฟิโบนาชี่ โดยวาดรูปครึ่งวงกลมที่มุมของแต่ละช่องสี่เหลี่ยม (รัศมีของครึ่งวงกลมแต่ละอันควรเท่ากับความยาวด้านของช่องสี่เหลี่ยม) จากนั้นเติมสีเฉพาะลงในครึ่งวงกลมแต่ละอันเพื่อสร้างงานศิลปะฟิโบนาชี่ที่ไม่ซ้ำใคร!

  • เลือกและดาวน์โหลดตารางฟิโบนาชี่เป็นไฟล์ PNG จากสไลด์โชว์ Google 
  • เลือก Art Canvas+ Playground แล้วอัปโหลดตารางฟิโบนาชี่
  • ประกาศตัวแปรสามตัว ได้แก่ , n, b, และ a, เพื่อแทนจำนวนปัจจุบัน จำนวนก่อนหน้าตัวแรก และจำนวนก่อนหน้าตัวที่สอง ตามลำดับ ในลำดับฟิโบนาชชี 
  • เขียนโค้ดให้หุ่นยนต์ VR สร้างเกลียวฟิโบนาชี่บนตารางฟิโบนาชี่
    • กำหนดค่าเริ่มต้นให้กับตัวแปร n, b, และ a ใช้ตัวแปร n เพื่อกำหนดขนาดของส่วนโค้งหนึ่งในสี่ของวงกลม
    • เขียนโค้ดให้หุ่นยนต์ VR ขับไปยังตำแหน่งเริ่มต้นสีเขียวบนตารางฟิโบนาชี่
    • โดยใช้ค่าของตัวแปร nเขียนโค้ดให้หุ่นยนต์ VR วาดรูปครึ่งวงกลมที่มุมของช่องสี่เหลี่ยมหมายเลข 1 โดยมีรัศมีเท่ากับความยาวด้านของช่องสี่เหลี่ยมนั้น 
    • อัปเดตค่าของตัวแปร n ให้เป็นตัวเลขถัดไปในลำดับฟิโบนาชชี แล้วใช้ค่าดังกล่าวในการเขียนโค้ดให้หุ่นยนต์ VR วาดรูปครึ่งวงกลมที่มุมของสี่เหลี่ยมจัตุรัสถัดไป ทำซ้ำขั้นตอนนี้เพื่อสร้างเกลียวฟิโบนาชี่บนตารางฟิโบนาชี่
  • เขียนโค้ดให้หุ่นยนต์ VR สร้างภาพศิลปะแบบฟิโบนาชี่
    • เขียนโค้ดให้หุ่นยนต์ VR ขับเข้าไปในส่วนโค้งครึ่งวงกลมแต่ละส่วน และใช้บล็อก [เติมสีลงในพื้นที่] เพื่อเติมสีเฉพาะลงในส่วนโค้งครึ่งวงกลมนั้น

คำแนะนำที่เป็นประโยชน์

  • ใช้ตัวแปร n เพื่อกำหนดขนาดของส่วนโค้งหนึ่งในสี่ของวงกลม ตัวอย่างเช่น คุณสามารถเขียนโค้ดให้หุ่นยนต์เคลื่อนที่ไปข้างหน้าเป็น  เลี้ยว 9 องศา และทำซ้ำการกระทำเหล่านี้ 10 ครั้งเพื่อวาดรูปครึ่งวงกลม
  • ปรับค่าเริ่มต้นของตัวแปร n เพื่อวาดรูปครึ่งวงกลมที่มีรัศมีเท่ากับความยาวด้านของสี่เหลี่ยมจัตุรัสหมายเลข 1 ตัวอย่างเช่น กำหนดค่าเริ่มต้นของตัวแปร n, bและ a เป็น 22.5, 22.5 และ 0 ตามลำดับ 
  • อัปเดตค่าของตัวแปร n ให้เป็นตัวเลขถัดไปในลำดับฟิโบนาชชีตามกฎของลำดับฟิโบนาชชี: n = a + bโดยที่ n แทนตัวเลขปัจจุบัน b แทนตัวเลขก่อนหน้าตัวแรก และ a แทนตัวเลขก่อนหน้าตัวที่สองในลำดับฟิโบนาชชี
  • ใช้บล็อก set จากหมวดหมู่ตัวแปรเพื่ออัปเดตค่าของตัวแปรบล็อกตัวแปร VEXcode Set สามบล็อกเรียงซ้อนกัน ตัวแรกอ่านว่า 'ตั้งค่า a เป็น b'ตัวที่สองอ่านว่า 'ตั้งค่า b เป็น n'และตัวสุดท้ายอ่านว่า 'ตั้งค่า n เป็น a + b'
    • คำสั่ง Python ที่ตรงกัน:

      a = b
      b = n
      n = a + b