วันพุธที่ 13 มกราคม พ.ศ. 2559

การสร้างหน้า login ด้วย Visual Basic2008

คลิบการสร้างหน้า Login  ก่อนเข้าโปรแกรม

แนะนำการเขียนโปรแกรมสั่ง หุ่นยนต์เคลื่อนไหวตามมนุษย์

เคยไปดูงาน วิศวะ' 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) 








วันอังคารที่ 1 กันยายน พ.ศ. 2558

วิธีการแก้โจทย์ปัญหา อัลกอริทึม

วิธีการแก้โจทย์ปัญหา อัลกอริทึม

ตัวอย่างการเขียนโปรแกรมแบบวนซ้ำ (Loop)

การเขียนโปรแกรมแบบวนซ้ำ (Loop)

         คำสั่งในกลุ่มนี้ เป็นอีกกลุ่มหนึ่งที่จะต้องใช้งานบ่อยครั้งที่สุด ไม่ว่าคุณจะพัฒนาแอพพลิเคชันด้วยภาษาอะไรก็ตาม เพราะมีหน้าที่สำหรับสั่งให้ VB ประมวลผลซ้ำกลุ่มคำสั่งเดิม วนไปเรื่อยๆ จนกว่าจะตรงกับเงื่อนไข ที่คุณต้องการ และยังมีหน้าที่สำหรับลดขั้นตอนในการเขียนโค๊ดคำสั่ง
*********************************************************************************

คำสั่งที่ใช้ในการวนซ้ำ (Loop)

1. จำนวนรอบที่ซ้ำตายตัว มีลูปFor . . . Next ( ตีความหมายให้เข้าใจง่ายคือ ทำซ้ำตามจำนวนรอบที่กำหนด )

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
  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 เนื่องจากโปรแกรมเริ่มทำการคำนวณก่อนจึงจะเปรียบเทียบ


ส่วนการแก้โจทย์ปัญหาอัลกอริทึมหัวข้อถัดไปนะครับ

ตัวอย่างการเขียนโปรแกรมแบบมีทางเลือกหรือแบบมีเงื่อนไข

ตัวอย่างการเขียนโปรแกรมแบบมีทางเลือกหรือแบบมีเงื่อนไข