วันพฤหัสบดีที่ 15 ตุลาคม พ.ศ. 2552
(ลูกแรดเตรียมพร้อมล่าเหยื่อ)
สิ่งที่ข้าพเจ้าได้รับจากการเรียนวิชานี้นั้น มีคุณค่าและประโยชน์มากมายมหาศาลเพราะการที่ข้าพเจ้าได้เรียนรู้ถึงวิธีการปฏิบัติหน้าที่ที่เป็นระบบระเบียบในการทำงานจะทำให้งานนั้นมีประสิทธิภาพมากขึ้นสิ่งสำคัญคือการร่วมมือร่วมใจกันทำงาน แบ่งแยกแยะว่าไรคือประโยชน์อะไรคือปัญหาและอุปสรรค วิชานี้สอนให้ข้าพเจ้าได้เรียนรู้ในเรื่องของการมีจิตใต้สำนึกที่ดีต่อการปฏิบัติให้กับตัวเองและผู้อื่นอย่างมีคุณภาพ ข้าพเจ้าคาดว่าจะสิ่งที่ข้าพเจ้าได้รับจากการเรียนวิชานี้สามารถที่จะนำความรู้ความสามารถในเรื่องต่างที่อาจาย์และวิทยากรบรรยาเป็นสิ่งที่จะนำไปใช้ในชีวิตการทำงานของข้าพเจ้าได้เป็นอย่างมากในอนาคตข้างหน้าวิชานี้ทำให้ข้าพเจ้ารู้สึกยินดีและประทับอาจาย์ผู้สอนที่ค่อยว่ากล่าวตักเตือนให้กับข้าพเจ้าและเพื่อนทุกๆคน ด้วยการที่จะปฏิบัติกระทำสิ่งใดนั้นวิชานี้สอนให้รู้ถึงความประพฤติปฏิบัติตนให้อยู่ในศีลธรรมจริยธรรมอันดีงานและสอนให้รู้ถึงความไม่ประมาทที่กระทำสิ่งใดๆ ให้ลุล่วงถึงความสมเร็จได้ สุดท้ายนี้วิชานี้ได้สอนให้ข้าพเจ้ารู้ถึงปัญหาและการแก้ปัญหาที่ถูกต้องว่าสิ่งใดคือปัญหาอุปสรรสิ่งใดคือประโยชน์ ข้าพเจ้า จะนำความรู้ที่ได้เรียนจากวิชาเตรียมฝึกประสบการณ์วิชาชีพไปประกอบอาชีพที่สุจริตต่อสังคมและผู้อื่น จะปฏิบัติหน้าที่ให้ดีที่สุด และอยู่ในศีลธรรมจริยธรรม ของพระผู้มีพระภาคเจ้าด้วยความไม่ประมาท
สิ่งที่ข้าพเจ้าได้รับจากการฝึกประสบการณ์วิชาชีพ
1.มีศีลธรรมจริยธรรม คือ การประพฤติดีงาม ประพฤติชอบ ประพฤติควร อะไรดีก็ทำ อะไรไม่มีก็ไม่ทำ
2.มีความเมตตา กรุณา คือ การที่มีความเมตตาต่อผู้อื่น ไม่เบียดเบียนผู้อื่นเป็นสิ่งประเสริฐ
3.ตรงต่อเวลา คือ การที่ประพฤติให้ตัวเรานั้นติดเป็นนิสัย ไม่ตามเวลา แต่ต้องเดินก่อนเวลา ถึงจะทันเวลา
4.การพูดจา คือ การใช้คำพูดที่ไพเราะ ไม่พูดคำหยาบคาย พูดในสิ่งที่ควรพูด และไม่พูดในสิ่งที่ไม่ดี
5.ความรู้ คือ เราต้องมีสติอยู่เสมอ ต่อการกระทำสิ่งนั้น ถ้าขาดสติ ก็จะไม่เกิด ความรู้ ไม่เกิดปัญญา
6.ความเหมาะสม คือ ทำให้เรานั้นมีความคิดว่าสิ่งใดที่เหมาะในการทำงาน ที่ได้รับ
7.มีบุคลิกภาพที่ดี คือ ทำให้การวางตัวได้ถูกต้อง ดูมีสง่าราศี และแต่งกายให้สุภาพเรียบร้อย
8.มีระเบียบวินัย คือ การประพฤติปฏิบัติ ในกฎข้อบังคับของผู้บังคับบัญชา
9.ความคิดในแง่ดี คือ การคิดในสิ่งที่ดีๆ ไม่คิดในแง่ลบ ถ้าคิดดีก็จะอยู่ในใจของผู้มีความดีใจก็จะเป็นเทวดา ถ้าเราคิดในสิ่งที่ไม่ดีก็จะเกิดความทุกข์ใจก็จะเป็นยักษ์
วันเสาร์ที่ 19 กันยายน พ.ศ. 2552
DTS09/19/2009
วันอาทิตย์ที่ 13 กันยายน พ.ศ. 2552
DTS08/13/09/2009
3.Cyclic Graph กราฟที่มีเส้นเชื่อมต่อระหว่าง vertex ที่ทำให้ vertex มีลักษณะเป็นวงจรปิด(Cycle)
วันพฤหัสบดีที่ 10 กันยายน พ.ศ. 2552
DTS07/01/09/2009
ย่อยๆได้อีกหลายโหนดเรียกกันว่าโหนดลูก (Child node) เมื่อมีโหนดลูกแล้ว โหนดลูกก็ยังสามารถแสดงเป็นโหนดพ่อแม่ (Parent node) โดยการแตกโหนดออกเป็นโหนดย่อยๆ ได้อีก
Root Node จากรูป คือ โหนด A
Child Node หรือ โหนดลูก จากรูป B,C,D และ E เป็นโหนดลูกของ A
Parent Node หรือโหนดพ่อแม่ โหนด B ที่เป็นโหนดลูกของโหนด A ก็สามารถแตกออกเป็นโหนดย่อยๆได้แก่ F และ G ดัง นั้น B จึงเป็นโหนดพ่อแม่ของ F และ G ในทำนองเดียวกัน A ก็นเป็นโหนดพ่อแม่ของ
B,C,D และ E กิ่ง (branch or Edge) เป็นเส้นที่เชื่อมต่อระหว่างโหนดพ่อแม่กับโหนดลูก Brother node หรือโหนดพี่น้อง คือ โหนดที่มีพ่อแม่เดียวกัน เช่น B,C,D,E เป็นโหนดพี่น้องกันเพราะมีโหนดพ่อแม่เดียวกัน คือ โหนด A และ F และ G เป็นโหนดพี่น้องกันโดยมี B เป็นโหนดพ่อแม่
Leaf node คือ โหนดที่ไม่มีโหนดลูก จากรูปโหนดที่ไม่มีโหนดลูกได้แก่ F G H K J K L M
Baranch node คือ โหนดที่ไม่ใช่ Leaf node เช่น โหนด B C D E เรียกว่า Branch node
Degree คือ จำนวนลูกของโหนด x เช่น degree ของโหนด A = 4 ได้แก่ B C D E จำนวน degree ของโหนด B=2 จำนวน degree ของโหนด F=0 เนื่องจากโหนด F ไม่มีโหนดลูก
Direct Descendant node คือ โหนดที่มาทีหลังทันที จากรป B C D E เป็น direct descendant node ของโหนด A เพราะเป็นโหนดที่มาทีหลังทันที
Descendant node คือ โหนดลูกของโหนด x และโหนดที่ทุกโหนดที่แตกจากโหนดลูกของโหนด x ตัวอย่าง descendant ของโหนด A คือ ทุกโหนดที่เหลือในทรี
Binary tree มีลักษณะเหมือนกับ tree ปกติแต่มีคุณสมบัติพิเศษ คือ แต่ละโหนดจะมีโหนดลูกได้ไม่เกิน 2 โหนด หรือพูดอีกอย่างหนึ่งว่า แต่ละโหนดใน binary tree จะมีดีกรีได้ไม่เกิน 2
Complete Binary Tree
หรือต้นไม้ใบนารีแบบสมบูรณ์ มีลักษณะคล้ายกับ Binary Tree แต่มีข้อพิเศษ คือ
1. ทุกโหนดที่ไม่ใช่ Leaf node จะต้องมีโหนดลูก 2 โหนด
2. Leaf node จะต้องอยู่ในระดับเดียวกัน
Binary Search Tree
จะมีลักษณะคล้ายกับ Binary Tree แต่มีลักษณะพิเศษเพิ่มเติม คือ
1. ค่าของรูทโหนดมีค่ามากกว่าค่าในต้นไม้ย่อยซ้าย
การท่องไปในทรี (Tree Traversal)
สามารถท่องเข้าไปในทรีเพื่อดูข้อมูลได้ 3 วิธีด้วยกัน คือ
1. Preorder
2. inorder
3. postorder
ในการท่องเข้าไปในทรีแต่ละแบบจะใช้สัญลักษณ์ดังนี้ Root = root node left = ต้นไม้ย่อยซ้ายของ
Root Right = ต้นไม้ย่อยขวาของ Root
วิธีการท่องเข้าไปในทรีแต่ละทรีแต่ละแบบจะมีลักษณะดังนี้
1. Preorder = Root Left Right
2. Inorder = Left Root Right
3. Postorder = Left Right Root
ตัวอย่างแสดงการท่องไปในทรี
วันพฤหัสบดีที่ 20 สิงหาคม พ.ศ. 2552
DTS06/20/08/2009
คิวเป็นโครงสร้างข้อมูลแบบลำดับลักษณะของคิวเราจะสามารถพบได้ในชีวิตประจำอยู่แล้ว เช่น การเข้าแถวตามคิวเพื่อรอการบริการต่างๆ ลำดับการสั่งการพิมพ์งานเป็นต้น ซึ่งจะเห็นได้ว่าลักษณะของการทำงานจะเป็นแบบของใครเข้าคิวก่อน จะได้รับการบริการก่อน เรียกได้ว่าเป็นลักษณะของการทำงาน
แบบ FIFO (First In ,First Out)
ลักษณะของคิวนั้นจะมีปลายสองข้าง ซึ่งข้างหนึ่งจะเป็นช่องทางสำหรับข้อมูลเข้าที่เรียกว่า Rear และอีกข้างหนึ่งซึ่งเป็นช่องทางสำหรับข้อมูลออก เรียกว่า Front ในการทำงานกับคิวที่ต้องมีการนำข้อมูลเข้าและออกนั้นจะต้องมีการตรวจสอบว่าคิวว่างหรือไม่เมื่อต้องการนำข้อมูลเข้า เพราะหากว่าคิวเต็มก็จะไม่สามารถทำการนำข้อมูลเข้าได้ เช่นเดียวกันเมื่อต้องการนำข้อมูลออกก็ต้องตรวจสอบอีกด้วยเช่นกันว่า ในคิวนั้นมีข้อมูลอยู่หรือไม่ หากคิวไม่มีข้อมูลก็จะไม่สามารถนำข้อมูลออกได้ เช่นเดียวกัน
การกระทำกับคิว การเพิ่มข้อมูลเข้าไปในคิวจะกระทำที่ตำแหน่ง Rrar หรือท้ายคิวและก่อนที่จะเพิ่มข้อมูลจะต้องตรวจสอบก่อนว่าคิวเต็มหรือไม่ โดยการเปรียบเทียบค่า Rear ว่าเท่ากับค่า Max queue หรือไม่ หากว่าค่า Rear=Max queue แสดงว่าคิวเต็มไม่สามารถเพิ่มข้อมูลเข้าไปได้ แต่หากไม่เท่า แสดงว่าคิวยังมีที่ว่างสามารถเพิ่มข้อมูลได้ เมื่อเพิ่มข้อมูลเข้าไปแล้ว ค่า Rear ก็จะเป็นค่าตำแหน่งท้ายคิวใหม่
ส่วนในการนำข้อมูลออกจากคิวจะกระทำที่ตำแหน่ง Front หรือส่วนที่เป็นหัวของคิว โดยก่อนที่จะนำข้อมูลออกจากคิวจะต้องมีการตรวจสอบก่อนว่ามีข้อมูลอยู่ในคิวหรือไม่ หากไม่มีข้อมูลในคิวหรือคิวว่างก็จะไม่สามารถนำข้อมูลออกจากคิวได้
คิวแบบวงกลม (Circular Queue) จะมีลักษณะเหมือนคิวธรรมดา คือ จะมีตัวชี้ Front และ Rear ที่แสดงตำแหน่งหัวคิวและท้ายคิวตามลำดับ โดยมี Front และ Rear จะมีการเลื่อนลำดับทุกครั้งเมื่อมีการนำข้อมูลเข้าและออกจากคิว แต่จะแตกต่างจากคิวธรรมดาตรงที่ว่า คิวธรรมดาเมื่อ Rear ชี้ตำแหน่งสุดท้ายของคิว จะทำให้เพิ่มข้อมูลเข้าไปในคิวอีกไม่ได้ เนื่องจากเนื่องจาก ค่า Rear=Max queue ซึ่งแสดงว่าคิวนั้นเต็มไม่สามารถเพิ่มข้อมูลเข้าไปได้อีก ทั้งๆ ที่ยังมีเนื้อที่ของคิวเหลืออยู่ก็ตาม ทำให้การใช้เนื้อที่ของคิวไม่มีประสิทธิภาพ
สำหรับคิวแบบวงกลม จะมีวิธีการจัดการกับปัญหานี้ คือ เมื่อมีข้อมูลเพิ่มเข้ามาในคิว ในลักษณะดังกล่าว คือ ขณะที่ Rear ชี้ตำแหน่งสุดท้ายของคิว ถ้าหากมีการเพิ่มค่าของ Rear จะสามารถวนกลับมาชี้ตำแหน่งแรกสุดของคิวได้ ซึ่งจะทำให้คิวมีลักษณะเป็นแบบวงกลมแสดงคิวแบบวงกลมที่ Rear สามารถวนกลับมาชี้ที่ตำแหน่งแรกสุดของคิว
วันอังคารที่ 28 กรกฎาคม พ.ศ. 2552
DTS05/28/07/52
กระบวนการทำงานของสแตกจะประกอบไปด้วยการทำงานที่สำคัญ 3 กระบวนการ คือ
1.Push คือการนำข้อมูลเข้าไปใส่ลงในสแตก เช่น สแตก a ต้องการใส่ล b ในสแตก จะได้ Push (ab)
ในการเพิ่มข้อมูลลงในสแตกนั้นจะทำการตรวจสอบว่าในสแตก มีพื้นที่ว่างหรือไม่ถ้าสแตกเต็มก็จะไม่สามรถเพิ่มข้อมูลเข้าไปในสแตกได้อีก
2.Pop คือการนำข้อมูลออกจากส่วนบนสุดของสแตก ถ้าต้องการนำข้อมูลออกจากสแตก ถ้ามีสแตกมีสมาชิกเพียงตัวเดียวแล้วนำสมาชิกออกจากสแตก ก็จะเกิดภาวะสแตกว่าง คือไม่มีสมาชิกตัวใดอยู่ในแตกเลยเพราะฉะนั้นแล้วการนำข้อมูลออกจากสแตกควรตรวจสอบก่อนว่าสแตกว่างอยู่หรือป่าว
3.Stack Top คืออะไร เป็นการ copy คัดลอกไฟล์ข้อมูลที่อยู่ด้านบนสุดของสแตก แต่ไม่ได้นำเอาข้อมูลนั้นออกมาจากสแตก
การคำนวณ นิพจน์ของ stack
ในการเขียนนิพจน์เพื่อการคำนวณนั้นจะต้องคำนึงถึงความสำคัญของเครื่องหมายสำการคำนวณโดยจะแบ่งการเขียน ได้ เป็น 3 แบบ คือ
1.นิพจน์ infix นิพจน์นี้ operator จะอยู่ตรงกลางระหว่างตัวถูกดำเนินการ 2 ตัว
2.นิพจน์ postfix นิพจน์นี้แบบนี้ จะต้องเขียนตัวถูกดำเนินการตัวที่ 1 และ 2 ก่อน
แล้วจึงเขียน operator
3.นิพจน์ prefix นิพจน์แบบนี้ จะต้องเขียน operator ก่อนแล้วจึงเขียนตามด้วยตัวถูกดำเนินการตัวที่ 1 และ 2 ตามลำดับ
การบ้านเขียนโปรแกรม iostream.h และ stdio.h
maim()
struct name {
char name[30];
char surname[40];
int age;
float salary;
int height;
int weight;
char status[10];
char birthday[40];
}name1;
printf("Insert Profile\n");
printf("Nane:");
scanf("%s",&name1.name);
printf("Surname:");
scanf("%s",&name1.surname);
printf("Age;");
scanf("%d",&name1.age);
printf("Salary:");
scanf("%f",&name1.salary);
printf("Height:");
scanf("%d",&name1.height);
printf("Weight:");
scanf("%d",&name1.weight);
printf("Status:");
scanf("%s",&name1.status);
print("Birthday:");
scanf("%s",&name1.birthday);
printf("\n\nYour Profile\n");
printf("Your name is : %s %s\n",name1.name,name1.surname);
printf("Age : %d\n",name1.age);
printf("Your Salary : %.2f\n",name1.salary);
printf("Height : %d and weight %d\n",name1.height,name1.weight);
printf("Status : %s\n",name1.status);
printf("Your BirthDay : %s\n",name1.birthday);
}
#include
#include
main()
{
struct neme {
char name[30];
char surname[40];
char add[44];
int age;
float salary;
int h;
int w;
char status;
char bd[40];
}name1;
cout << "Insert Profile\n";
cout << "Name : ";
cin >> name1.name;
cout << " Surname:";
cin >> name1.surname;
cout << " Add :";
gets (name1.add);
cout << "Age : ";
cin >> name1.age;
cout << "Salary :";
cin >> name1.salary;
cout << "Height :";
cin >> name1.h;
cout << "Weight :";
cin >> name1.w;
cout << "Status :";
cin >> name1.status;
cout << "Birthday :";
cin >> name1.bd;
ตัวอย่าง สแตก(stack)ในชีวิตประจำวัน
2. กล่องใส่แผ่นซีดีใส่แผ่นซีดีซ้อนๆกันไว้
3. การผับผ้าวางเป็นกองๆ
4. การวางหนังสือซ้อนกันเป็นหมวดหมู่
5. การใส่เสื้อผ้า
6. การใส่ถุงเท้ารองเท้า
7. การประกอบเครื่องยนต์
วันอังคารที่ 21 กรกฎาคม พ.ศ. 2552
DTS04/21/07/52
ลิงค์ลิสต์เป็นวิธีการเก็บข้อมูลอย่างต่อเนื่องของอิลิเมรต์ต่างๆ โดยจะมีพอยเตอร์เป็นตัวเชื่อมต่อ ในแต่ละ
อิลิเมนท์ จะเรียกว่า โนด (Node) โดยในแต่ละโนดจะประกอบไปด้วย 2 ส่วน คือ Data จะเก็บข้อมูลของ
อิลิเมนท์ ในส่วนที่สอง คือ Link Field ทำหน้าที่เก็บตำแหน่งของโนดต่อไปในลิสต์ ในลิงค์ลิสต์จะมีตัวแปรสำหรับชี้ตำแหน่งลิสต์ซึ่งจะเป็นที่เก็บตำแหน่งเริ่มต้นของลิสต์ ก็คือ โหนดแรกของลิสต์นั่นเอง ถ้าในลิสต์ไม่มีข้อมูล ข้อมูลในโหนดแรกของลิสต์นั้จะเป็น Null
โครงสร้างของข้อมูลแบบลิงค์ลิสต์จะแบ่งเป็น 2 ส่วน คือ
Head Structure จะประกอบไปด้วย 3 ส่วน คือจำนวนโหนดในลิสต์ (Count) พอยเตอร์ที่ชี้ไปยัง
โหนดที่เข้าถึง (Pos)และพอยเตอร์ที่ชี้ไปยังโหนดข้อมูลแรกของลิสต์ (Head)
Data Node Structure ประกอบไปด้วยข้อมูลและพอยเตอร์ที่ชี้ไปยังข้อมูลถัดไป
กระบวนการทำงานของ Delete Node จะทำหน้าที่ลบสมาชิกในลิสต์ในลิสต์บริเวณตำแหน่งที่เราต้องการการนำข้อมูลนำเข้าข้อมูลและตำแหน่งและผลลัพธ์ที่ลิสต์ที่มีการเปลี่ยนแปลง
กระบวนการทำงาน Search list
หน้าที่ ค้นหาข้อมูลในลิสต์ที่ต้องการของข้อมูลนำเข้าลิสต์ ผลลัพธ์ ค่าจริงจะถ้าพบข้อมูล ค่าเท็จถ้าไม่พบข้อมูลนั้น
Traverse คือ หน้าที่ท่องไปในลิสต์เพื่อเข้าถึงและ ประมวลผลข้อมูลนำเข้าลิสต์ ผลลัพธ์ ขึ้นกับการประมวลผล
เช่นการเปลี่ยนแปลงค่า ใน node,รวมกับฟิลด์ในลิสต์คำนวณค่าเฉลี่ยของฟิลด์ นั้นเป็นต้น
Retrieve Node หน้าที่ คือ หาตำแหน่งข้อมูลจากลิสต์ข้อมูลนำเข้าลิสต์ ผลลัพธ์คือ ตำแหน่งข้อมูลที่อยู่ใลสต์
ฟังก์ชั่น เป็น หน้าที่ ทดสอบว่าลิสต์ว่างข้อมูลนำเข้าลิสต์ ผลลัพธ์ ถ้าเป็นจริง
ลิสต์ว่าง ถ้าเป็นเท็จ ลิสต์ไม่ว่าง การทำงานของ FullList ทดสอบหน้าที่ ว่าลิสต์เต็มหรือไม่มีข้อมูลนำเข้าลิสต์ ผลลัพธ์คือ ถ้า เป็นจริง หน่วยความจำเต็ม เป็นเท็จ สามารถมีโหนดอื่น กระบวนการทำงานของ Destroy list หน้าที่คือ การทำลายลิสต์ ข้อมูลนำเข้าคือ ลิสต์และผลลัพธ์ คือไม่มีลิสต์
วันอาทิตย์ที่ 12 กรกฎาคม พ.ศ. 2552
DTS03/12/07/52
เรื่อง Set and Sting โครงสร้างข้อมูลแบบเซ็ตจะเป็นโครงสร้างข้อมูลแต่ละตัวที่ไม่มีความสัมพันธ์กับภาษาซีแต่สามารถใช้หลักการดำเนินงานแบบเซ็ตมาใช้ได้ ตัวดำเนินการของเซ็ตนั้น จะประกอบไปด้วย
-set intersection
-set union
-set difference
โครงสร้างข้อมูลแบบสตริงจะแตกต่างไปจากโครงสร้างข้อมูลแบบเซ็ต คือ สตริงเป็นข้อมูลที่ประกอบไปด้วย อักษร ตัวเลข หรือเครื่องหมายต่างๆ ที่เรียงต่อๆ กันรวมทั้งช่องว่าง โครงสร้างแบบสตริงนั้น ความยาวของสตริงจะถูกกำหนดโดยขนาดของสตริง โดยขนาดของสติงนั้นจะต้องจองเนื้อที่ในหน่วยความจำให้กับ \0ด้วย
เช่น "This is the sun" จะเป็นข้อมูลยาว 16 อักขระ โดยจุดสิ้นสุดของ สตริงนั้นจะต้องจบด้วย \0 หรือ null character เช่น
char a[]={'s','u','n','\0'};
chsr a[]="sun";
ในการกำหนดโครงสร้างแบบสตริงนั้นทำได้หลายแบบ คือ กำหนดเป็นสตริงที่มีค้าคงตัวและกำหนดใช้ตัวแปร
อะเรย์หรือพอยเตอร์ ในการกำหนดค่าคงตัวสตริงสามารถกำหนดได้ทั้งนอกและในฟังก์ชันถ้าเรากำหนดไว้นอกฟังก์ชัน ชื่อค่าคงตัวจะเป็นพอยเตอร์ชี้ไปยังหน่วยความจำที่เก็บสตริงนั้น ถ้าเรากำหนดไว้ในฟังก์ชัน ก็จะเป็น พอยเตอร์ไปเก็บยังหน่วยความที่ตัวของมันเอง
โครงสร้างข้อมูลแบบสตริงในการกำหนดค่าคงตัวสตริงให้แก่พอยต์เตอร์กับอะเรย์สามารถกำหนดค่าคงตัวสตริงให้
พอยเตอร์อะเรย์ได้ในฐานะเริ่มต้น เช่น
main(){
char name[]="wisit.";
char *lastname="rinjan.";
printf("%s%s",name,lastname);
}
ถ้าหามีสตริงจำนวนมากก็ควรที่จะทำให้เป็นอะเรย์ของสตริง เพื่อที่จะเขียนโปรแกรมได้สะดวก ในการสร้างอะเรย์ของสตริง
วันจันทร์ที่ 29 มิถุนายน พ.ศ. 2552
DTS02-/24/06/52
อะเรย์เป็นโครงสร้างข้อมูลที่มีลักษณะคล้ายเซ็ตในคณิตศาสตร์ คือ อะเรย์จะประกอบด้วยสมาชิกที่มีจำนวนคงที่ มีรูปแบบข้อมูลเป็นแบบเดียวกัน สมาชิกแต่ละตัวใช้เนื้อที่จัดเก็บที่มีขนาดเดียวกัน
การกำหนดอะเรย์จะต้องกำหนดชื่ออะเรย์ พร้อมกับ subscriptซึ่งเป็นตัวกำหนดขอบเขตของอะเรย์มีได้มากกว่า 1 ตัว อะเรย์มี subscript มากกว่า 1 ตัวจะเรียกว่า อะเรย์หลายมิติการกำหนด subscript แต่ละตัวจะประกอบไปด้วยค่าสูงสุดและค่าต่ำสุดของ subscript นั้น
subscript คือค่าต่ำสุดต้องมีค่าน้อยกว่าหรือเท่ากับค่าสูงสุดเสมอ
ค่าสูงสุดเรียกว่า ขอบเขตบน
อะเรย์ 1 มิติ รูปแบบ data-type array-name[expression]
data-type คือ ประเภทของข้อมูลอะเรย์ เช่น int float char
array-name คือ ชื่อของอะเรย์
expression คือ นิพจน์จำนวนเต็มซึ่งระบุจำนวนสมาชิกของอะเรย์
type หมายถึง ชนิดของตัวแปรที่ต้องการประกาศ
array-name หมายถึง ชื่อของตัวแปรที่ต้องการประกาศเป็นอะเรย์
การบ้านโครงสร้างข้อมูล
char fam_name[30];
char dad_name[50];
int age_dad;
char mom_name[50];
int age_mom;
char son_name;[50];
int age_son;
float fam_income;
} family1;
ตัวอย่าง
family1.age_dad=40;
family1.fam_income=50000;
วันพฤหัสบดีที่ 25 มิถุนายน พ.ศ. 2552
ประวัติ
ชื่อ-นามสกุล นายวิสิทธิ์ รินจันทร์
ชื่อเล่น ตั้ม
วัน เดือน ปีเกิด 22 กันยายน พ.ศ. 2531
ส่วนสูง 173
น้ำหนัก 65
การศึกษา ศึกษาอยู่ที่ มหาวิทยาลัยราชภัฏสวนดุสิต
อาชีพ นักศึกษา
คติประจำใจ จงสร้าง บุญและทำความดีบนโลกนี้