20 กรกฎาคม 2551

วิธีออกแบบเครื่องสภานะำจำกัด Finite State Machine

เป็นการบ้านที่ทำส่งวิชา compiler ลองเข้าไปดูกันได้ครับ
ที่ http://thaifinitestatemachine.googlepages.com/

31 พฤษภาคม 2551

RoBo Chanmp แข่งหุ่นยนต์ แบบ simulation



ผมได้เข้าร่วมการแข่งขัน robochamps ของ microsoft ไปแล้วครับ

รู้สึกว่าเป็นรายการแข่งขันที่น่าสนใจ เลยอยากให้ช่วยแนะนำการแข่งขันนี้




ลักษณะการแข่งขัน
1. ใช้ตัว simulation จำลองสภาพแวดล้อมทั้งหมดครับ
2. เขียนให้หุ่นยนต์ ทำงานแบบอัตโนมัติ ตามกติกาที่กำหนดในแต่ละสนาม
ซึ่งจะมีทั้งหมด 6 สนาม

ประโยนช์ เชิงเทคนิคครับ
1. ได้เขียนโปรแกรมแบบ service-oriented ซึ่งกำลังมาแรง
2. เรียนรู้การsimulation แบบ physicX คือมากกว่า 3D เพราะวัตถุจะมีน้ำหนัก เสมือนจริงยิ่งขึ้น
3. ได้เรียนรู้การใช้ Computer Vision
4. เรียนภาษาใหม่ Microsoft Visual Programming Language จะใข้หรือไม่ก็ได้

ของรางวัล
1 .ของรางวัลประจำสนาม
2. รางวัลคะแนนรวมทุกสนาม
Linkที่สำคัญ
1. เว็บการแข่งขัน http://www.robochamps.com
2. ภาษาและเครื่องมือการพัฒนา http://msdn.microsoft.com/en-us/library/bb483024.aspx

23 พฤษภาคม 2551

ตัวแปร pointer [ตัวชี้มหัศจรรย์]

ตัวแปร pointer [ตัวชี้มหัศจรรย์]

อ่านง่ายๆที่ google doc http://docs.google.com/Doc?id=dcntsjcf_6cck233

เห็นช่วงนี้น้องๆ แต่ละคนก็ถามมามากเหลือเกินเกี่ยวกับตัวแปรชนิดนี้
ส่วนใหญ่น่าเป็นแบบบ่นๆมากกว่านะว่าเรียนไม่รู้เรื่อง เลยตั้งใจจะเขียนอธิบาย
แต่ไม่แน่ใจว่าจะทำให้งงมากกว่าเดิมหรือเปล่านะ

ตัวแปร แบบ pointer คือตัวแปลที่เก็บ address <---เห็นมั้ยนิยามมีนิดเดียวเอง
เช่น
int *pint;
ก็จะได้ตัวแปล pointer ชื่อว่า pint ที่เก็บ addressของตัวแปลชนิด int นั่นเอง

operater ที่ใช้กับตัวแปร pointer
มีอยู่สองตัวด้วยกันคือ
1.วิธีการเอา address ของตัวแปลอื่นมาให้เจ้า pint
pint = &a;

เป็นการเก็บ address ของ a ไว้ที่ pint
ตัวเลขที่อยู่ใน pint เนี่ยจะเป็นไปตามแต่ละครั้งที่ รันโปรแกรมนะไม่แน่นอน
ถ้าอยากรู้ก็ลอง print ออกมาดูได้ครับ
printf("%x",pint);
2.วิธีดำเนินการกับข้อมูลใน address ที่ชี้อยู่
pint =&a; เก็บ address ของ a ไว้ที่ pint
*pint= 5; เอาค่า 5 ไปใส่ใน address ของ a
จากคำสั่งข้างบนจะทำให้ตัวแปร a เนี่ยมีึค่าเท่ากับ 5

เอาหละวันนี้เอาไว้แค่นี้ก่อนวันหลังจะเอาโจทย์มาฝาก เพราุะรู้ว่า นี่คือสิ่งที่ทุกคนรู้อยู่แล้วแต่
ที่งง คือ แล้วจะทำยังไงกับโจทย์ยากๆมากกว่าใช่มัย อดใจรออีกไม่นานนะครับ