คลิบการสร้างหน้า Login ก่อนเข้าโปรแกรม
คลังความรู้ คอมพิวเตอร์
วันพุธที่ 13 มกราคม พ.ศ. 2559
แนะนำการเขียนโปรแกรมสั่ง หุ่นยนต์เคลื่อนไหวตามมนุษย์
เคยไปดูงาน วิศวะ' 58 และ Engineering Expo 2015 จัดโดย : คณะวิศวกรรมศาสตร์
สถาบันเทคโนโลยีพระจอมเกล้าเจ้าคุณทหารลาดกระบัง ศูนย์ประชุมนิทรรศการไบเทค
บางนา เห็นโครงงานหุ่นยนต์เคลื่อนไหวตามมนุษย์
มีความสนใจจึงหาข้อมูลในการเขียนโปรแกรม และอุปกรณ์ต่างๆ
ขอโอกาสแนะนำนักเรียนที่มีความสนใจในการเขียนโปรแกรมสั่ง หุ่นยนต์เคลื่อนไหวตามมนุษย์
เหมือนในหนัง Real Steel ศึกหุ่นเหล็กกำปั้นถล่มปฐพี
ต้องดูคลิบการเขียนโปรแกรมครับ ครูว่าเขียนโปรแกรมไม่ยากเพราะมี Code และ Kinect
Drivers เป็นตัวอย่างให้ดูครับ
คลิบตัวอย่างครับ
This is the skeletal tracker feature in the Microsoft Kinect SDK. http://research.microsoft.com/en-us/u...
Showed you a few movements and its tracking capabilities. The Kinect, Microsoft, XBOX and the SDK are all property of Microsoft
vb2008 การสร้างโปรแกรม ด้วยการใช้ MDI Form
MDI (Multiple Document Interface)
เป็นรูปแบบแอพพลิเคชั่นที่มีวินโดว์ย่อย (Child Form) ได้หลายวินโดว์
โดยวินโดว์ย่อยจะอยู่ภายในวินโดว์หลัก (Parent Form หรือ MDI Form) วินโดว์ย่อยสามารถถูกย่อ
ขยาย หรือเปลี่ยนตำแหน่ง ซึ่งจะอยู่ภายในวินโดว์หลักเท่านั้น
ตัวอย่าง โปรแกรม
คลิบวิธีการสร้าง MDI (Multiple Document Interface)
วันพฤหัสบดีที่ 3 กันยายน พ.ศ. 2558
วันอังคารที่ 1 กันยายน พ.ศ. 2558
ตัวอย่างการเขียนโปรแกรมแบบวนซ้ำ (Loop)
การเขียนโปรแกรมแบบวนซ้ำ (Loop)
คำสั่งในกลุ่มนี้ เป็นอีกกลุ่มหนึ่งที่จะต้องใช้งานบ่อยครั้งที่สุด
ไม่ว่าคุณจะพัฒนาแอพพลิเคชันด้วยภาษาอะไรก็ตาม
เพราะมีหน้าที่สำหรับสั่งให้ VB ประมวลผลซ้ำกลุ่มคำสั่งเดิม
วนไปเรื่อยๆ จนกว่าจะตรงกับเงื่อนไข ที่คุณต้องการ
และยังมีหน้าที่สำหรับลดขั้นตอนในการเขียนโค๊ดคำสั่ง
*********************************************************************************
คำสั่งที่ใช้ในการวนซ้ำ (Loop)
1. จำนวนรอบที่ซ้ำตายตัว มีลูปFor
. . . Next
( ตีความหมายให้เข้าใจง่ายคือ
ทำซ้ำตามจำนวนรอบที่กำหนด )
2. จำนวนรอบที่วนซ้ำไม่ตายตัว มีลูปDo While . . . Loop ( ตีความหมายให้เข้าใจง่ายคือ เปรียบเทียบค่าก่อน แล้วเมื่อเป็นจริงจะทำซ้ำ )
Do Loop . . . While ( ตีความหมายให้เข้าใจง่ายคือ ทำก่อน แล้วเปรียบเทียบค่า หากเป็นจริงจะทำซ้ำ )
Do Until . . . Loop ( ตีความหมายให้เข้าใจง่ายคือ เปรียบเทียบค่าก่อน แล้วเมื่อเป็นจริงจึง จะทำซ้ำ )
Do Loop . . . Until ( ตีความหมายให้เข้าใจง่ายคือ ทำก่อน แล้วเปรียบเทียบค่า หากเป็นจริง จะทำซ้ำ )
2. จำนวนรอบที่วนซ้ำไม่ตายตัว มีลูปDo While . . . Loop ( ตีความหมายให้เข้าใจง่ายคือ เปรียบเทียบค่าก่อน แล้วเมื่อเป็นจริงจะทำซ้ำ )
Do Loop . . . While ( ตีความหมายให้เข้าใจง่ายคือ ทำก่อน แล้วเปรียบเทียบค่า หากเป็นจริงจะทำซ้ำ )
Do Until . . . Loop ( ตีความหมายให้เข้าใจง่ายคือ เปรียบเทียบค่าก่อน แล้วเมื่อเป็นจริงจึง จะทำซ้ำ )
Do Loop . . . Until ( ตีความหมายให้เข้าใจง่ายคือ ทำก่อน แล้วเปรียบเทียบค่า หากเป็นจริง จะทำซ้ำ )
ในการเขียนโปรแกรมคำสั่งนี้ ต้องระบุนิพจน์ให้ได้ ซึ่งกำหนดไว้ 3 นิพจน์ดังนี้
1.นิพจน์กำหนดค่าเริ่มต้น
2. จำนวนรอบ
3. ช่วงการเพิ่มค่า
**************************************************************************************************
**************************************************************************************************
Clip ตัวอย่างการเขียนคำสั่ง
**************************************************************************************************
ตัวอย่างคำสั่ง For . . . Next
รูปแบบ
For 1.นิพจน์กำหนดค่าเริ่มต้น
To 2. จำนวนรอบ [Step 3. ช่วงการเพิ่มค่า]
Next
* ในกรณีที่ไม่มีการกำหนดการเพิ่มค่าให้กับนิพจน์ที่ 3 คำสั่งจะเพิ่มครั้งละ 1
ตัวอย่างที่ 1
For i = 1 To 10
Print i
Print i
Next
ตัวอย่างที่ 2 นำมาเขียนในโปรแกรม VB
Dim first, last As Integer
first = first1.Text
last = last1.Text
ListBox1.Items.Clear()
For first = first To last
ListBox1.Items.Add(first)
Next
ตัวอย่างดังภาพค่าที่ได้ จะแสดงผลใน ListBox คือ 1-10
**************************************************************************************************
Do While . . . Loop
(เปรียบเทียบค่าก่อน แล้วเมื่อเป็นจริงจะทำซ้ำ )
•รูปแบบ
(1)
นิพจน์กำหนดค่าเริ่มต้น
Do While (2) นิพจน์ตรวจสอบเงื่อนไข
(3) นิพจน์เพิ่มค่า
Loop
ตัวอย่างที่ 1
A = 0
Do While A <
5
A = A + 1
Loop
ตัวอย่างที่ 2 นำมาเขียนในโปรแกรม VB
Dim first, last As Integer
first = first1.Text
last = last1.Text
ListBox1.Items.Clear()
Do While (first < last)
ListBox1.Items.Add(first & " ")
first = first + 1
Loop
ตัวอย่างดังภาพค่าที่ได้ จะแสดงผลใน ListBox คือ 1-9 เนื่องจาก นิพจน์ที่ 2 ตรวจสอบเงื่อนไขว่า first < last น้อยกว่า จริงจะทำการเพิ่มค่าครั้งละ 1 จนถึง 10 ตรวจสอบ 10<10 เป็นเท็จจึงหยุดออกจากการวนซ้ำ
**************************************************************************************************
Do Loop . . . While
(ทำการคำนวณแล้วจึงเปรียบเทียบค่า เมื่อเป็นจริงจะทำซ้ำ )
•รูปแบบ
(1)นิพจน์กำหนดค่าเริ่มต้น
Do
(2)นิพจน์เพิ่มค่า
Loop While (3)นิพจน์ตรวจสอบเงื่อนไข
ตัวอย่างที่ 1
A = 0
Do
A = A + 1
Loop While A < 5
ตัวอย่างที่ 2 นำมาเขียนในโปรแกรม VB
Dim first, last As Integer
first = first1.Text
last = last1.Text
ListBox1.Items.Clear()
Do
first = first + 1
ListBox1.Items.Add(first & " ")
Loop While (first < last)
สังเกตุว่า ค่าที่ได้จะแสดงค่าเริ่มต้นที่ 2-10 เป็นเพราะว่า โปรแกรมเริ่มทำงานคำนวณก่อน แล้วจึงเข้าสู่ นิพจน์ที่ 2 ตรวจสอบเงื่อนไข
**************************************************************************************************
Do
Until . . . Loop
เปรียบเทียบค่าก่อน แล้วเมื่อเป็นเท็จจะทำซ้ำจนกระทั่งเป็นจริงจึงจะหยุดทำซ้ำ
•รูปแบบ
(1)
นิพจน์กำหนดค่าเริ่มต้น
Do Until (2) นิพจน์ตรวจสอบเงื่อนไข
(3) นิพจน์เพิ่มค่า
Loop
ตัวอย่างที่ 1
A = 0
Do Until A = 5
A = A + 1
Loop
ตัวอย่างที่ 2 นำมาเขียนในโปรแกรม VB
Dim first, last As Integer
first = first1.Text
last = last1.Text
ListBox1.Items.Clear()
Do Until first = last
ListBox1.Items.Add(first & " ")
first = first + 1
Loop
จากภาพเป็นการแสดงผลเมื่อทำการคลิกปุ่ม
**************************************************************************************************
Do Loop . . . Until
ทำการคำนวณก่อนจึงจะเปรียบเทียบค่า เมื่อเงื่อนไขเป็นเท็จจะทำซ้ำจนกระทั่งเป็นจริงจึงจะหยุดทำซ้ำ
•รูปแบบ
1)นิพจน์กำหนดค่าเริ่มต้น
Do
(2)นิพจน์เพิ่มค่า
Loop Until (3)นิพจน์ตรวจสอบเงื่อนไข
ตัวอย่างที่ 1
A = 0
Do
A = A + 1
Loop Until A
> 5
ตัวอย่างที่ 2 นำมาเขียนในโปรแกรม VB
Dim first, last As Integer
first = first1.Text
last = last1.Text
ListBox1.Items.Clear()
Do
first = first + 1
ListBox1.Items.Add(first & " ")
Loop Until first = last
สังเกตุจากการแสดงผลเริ่มต้นที่ 2-11 เนื่องจากโปรแกรมเริ่มทำการคำนวณก่อนจึงจะเปรียบเทียบ
ส่วนการแก้โจทย์ปัญหาอัลกอริทึมหัวข้อถัดไปนะครับ
ตัวอย่างการเขียนโปรแกรมแบบมีทางเลือกหรือแบบมีเงื่อนไข
ตัวอย่างการเขียนโปรแกรมแบบมีทางเลือกหรือแบบมีเงื่อนไข
สมัครสมาชิก:
บทความ
(
Atom
)