More Related Content
Similar to ตัวแปรชุดและตัวแปรกลุ่มอักขระ
Similar to ตัวแปรชุดและตัวแปรกลุ่มอักขระ (18)
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
- 3. 1.1 คำสั่งกำหนดลักษณะตัวแปรชุด
การกาหนดลักษณะของตัวแปรชุด หมายถึง การกาหนดวิธีการจัดเก็บ
ข้อมูล โดยใช้ตารางข้อมูล ที่เรียกว่า มิติ (Dimension) แบ่งตามลักษณะการ
ทางานได้3 รูปแบบ คือ แบบ 1 มิติ แบบ 2 มิติ และแบบ 3 มิติ ดังนี้
1.คำสั่งกำหนดตัวแปรชุดแบบ 1 มิติ
รูปแบบ type array_name [ r ] ;
2.คำสั่งกำหนดตัวแปรชุดแบบ 2 มิติ
รูปแบบ type array_name [ r ] [ c ] ;
3.คำสั่งกำหนดตัวแปรชุดแบบ 3 มิติ
รูปแบบ type array_name [ n ] [ r ] [ c ] ;
- 5. 2) ลักษณะตำรำงข้อมูลตัวแปรชุดแบบ 2 มิติ
ตัวอย่างคาสั่ง ของพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ a
ตารางข้อมูลขนาดพื้นที่ 2 แถว 4 คอลัมน์ int a [ 2] [ 4 ] ;
แสดงลักษณะตำรำงข้อมูลในตัวแปรชุด 2 มิติ ขนำด 2 แถว 4 คอลัมน์
คอลัมน์ 0 คอลัมน์ 1 คอลัมน์ 2 คอลัมน์ 3
แถว 0
มิติที่2
แถว1
มิติที่1
a [ 0 ] [ 0 ]
ข้อมูล ...
a [ 0 ] [1 ]
ข้อมูล ...
a [ 0 ] [2 ]
ข้อมูล ...
a [ 0 ] [3 ]
ข้อมูล ...
a [ 1 ] [ 0 ]
ข้อมูล ...
a [ 1 ] [1 ]
ข้อมูล ...
a [ 1 ] [2 ]
ข้อมูล ...
a [ 1 ] [3 ]
ข้อมูล ...
- 6. 3) ลักษณะตำรำงข้อมูลตัวแปรชุดแบบ 3 มิติ
ตัวอย่างคาสั่ง ของพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ ตารางข้อมูล
ขนาดพื้นที่ 2 แถว 2 คอลัมน์ 2 ตารางข้อมูล
แสดงลักษณะตำรำงข้อมูลในตัวแปรชุด 3 มิติ ขนำด 2 แถว 2 คอลัมน์ 2ตำรำง
คอลัมน์ 0 คอลัมน์ 1 คอลัมน์ 0 คอลัมน์ 1
ตารางข้อมูลที่ 0 (มิติ 3)
a [ 0 ] [ 0 ] [ 0 ]
ข้อมูล ...
a [ 0 ][0 ] [1 ]
ข้อมูล ...
a [ 1 ] [ 0 ] [ 0 ]
ข้อมูล ...
a [ 1 ][0 ] [1 ]
ข้อมูล ...
ตารางข้อมูลที่ 1 (มิติ 3)
a [ 0 ] [ 1 ] [0]
ข้อมูล ...
a [ 0 ] [1] [1 ]
ข้อมูล ...
a [ 1 ] [ 1 ] [ 0]
ข้อมูล ...
a [ 1 ][1] [1 ]
ข้อมูล ...
- 7. 1.3 กำรอ้ำงอิงพื้นที่หน่วยควำมจำของตัวแปรชุด
การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด หมายถึง การนาข้อมูลลง
ตารางข้อมูล การอ่านค่าข้อมูลจากตารางข้อมูล การกาหนดค่าข้อมูลลงตาราง
ข้อมูล การประมวลผลโดยใช้ข้อมูลจากตัวแปรชุดพื้นที่ที่ต้องการ
1.กำรป้ อนข้อมูลลงพื้นที่หน่วยควำมจำตัวแปรชุด
การป้อนข้อมูลจัดเก็บลงพื้นที่หน่วยความจาตัวแปรชุดต้องอ้างอิง
ชื่อตัวแปร ตามด้วยหมายเลขพื้นที่ เพื่อความสะดวกรวดเร็วในการควบคุม
นาเข้าข้อมูลลงพื้นที่หน่วยความจา จึงใช้คาสั่งควบคุมวนซ้าช่วยดาเนินงาน
ในที่นี้ยกตัวย่าง การวนซ้าควบคุมการนาข้อมูลลงพื้นที่ตัวแปรชุดด้วยคาสั่ง
for ดังนี้
- 8. ตัวอย่างคาสั่ง วนซ้าเพื่อรีบข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุดแบบ 1 มิติ
จานวน 5 พื้นที่
for (n = 1 ; n <= 5 ; n++)
{
printf (“ Score = “ ) ;
scanf (“ %d “ , &score [ n ] ) ;
}
อธิบำย 1. ควบคุมให้วนซ้า5 รอบ เพื่อรับข้อมูลคะแนน จัดเก็บในหน่วยความจา
ตัวแปรชุด ชื่อ score จานวน 5 พื้นที่ จากคาสั่ง scanf
2. สาหรับ n ค่าแรก คือ ค่า 1 และเพิ่มค่าทีละ 1 แต่ไม่เกิน 5
- 11. 2. ประสิทธิภำพกำรเก็บข้อมูลแบบกลุ่มอักขระ
ตัวแปรแบบกลุ่มอักขระ หรือเรียกว่า ตัวแปรแบบสตริง (StringVariable)
เป็นข้อมูลตัวแปรชุดประเภทหนึ่งที่มีลักษณะเป็นข้อมูลประเภทข้อความ
ประกอบด้วยอักขระมากกว่า 1 ตัว ใช้เนื้อที่ 1อักขระต่อ1 ไบต์การสิ้นสุดกลุ่ม
ข้อมูลประเภทข้อความด้วยการกดแป้น Enter ระบบจะแทนค่าในหน่วยความจา
ด้วยสัญลักษณ์ “ 0 ” ดังนั้น การกาหนดขนาดพื้นที่ให้ข้อความ ต้องคานวณ
พื้นที่บวก 1 ค่าไว้เสมอ
- 18. 3.2 กรณีศึกษำ กำรอ้ำงอิงข้อมูลประเภทค่ำคงที่ในหน่วยควำมจำตัวแปร
ชุดแบบ 1 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อกาหนดค่าคะแนนนักเรียน 5 รายใน
ตัวโปรแกรม ดังนี้ 15.5, 19.5, 10.0, 12.5, 19.7 แล้วอ่านข้อมูลที่นาไปจัดเก็บ
ในตารางข้อมูลนั้นมาแสดงผลที่จอภาพ
ตัวอย่างโปรแกรมที่ 5.2 กรณีศึกษาโปรแกรมระบบงาน กาหนดข้อมูลและ
อ่านค่าจากหน่วยความจาตัวแปรชุด 1 มิติ
- 20. 3.3 กรณีศึกษำกำรอ้ำงอิงข้อมูลประเภทตัวแปรในหน่วยควำมจำตัวแปรชุด
แบบ 2 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อป้อนข้อมูลคะแนนนักเรียน 2 ราย แต่
ละรายต้องป้อนคะแนนจานวน 3 วิชา บันทึกลงหน่วยความจาแบบตัวแปรชุด
แล้วอ่านค่าจากหน่วยความจาตัวแปรชุดแสดงผลที่จอภาพ
วิเคราะห์ตารางข้อมูลจากโจทย์ต้องใช้ตัวแปรชุดขนาด 2 มิติ ขนาด 2 แถว
x 3 คอลัมน์ ได้ตารางข้อมูลขนาด 6 ห้องคือ
- 22. 3.4 กรณีศึกษำกำรอ้ำงอิงข้อมูลประเภทตัวแปรในหน่วยควำมจำตัวแปรชุด
แบบ 1 มิติกำหนดรอบวนซ้ำโดยผู้ใช้ระบบงำนโปรแกรม
โจทย์ :จงเขียนขั้นตอนการสร้างงานโปรแกรม เพื่อป้อนข้อมูลชื่อรายการ
วัตถุดิบ และราคาของวัตถุดิบที่ใช้ ดาเนินงานตามจานวนที่ผู้ใช้ระบบระบุ
จานวนรายการ แล้วให้พิมพ์สรุปข้อมูลที่บันทึกทั้งหมดพร้อมพิมพ์ผลรวม
จานวนเงินวัตถุดิบทั้งหมดที่จัดซื้อในครั้งนี้ การแสดงผลทางจอภาพให้
ออกแบบตามความเหมาะสมของงาน
- 25. อธิบาย 1. คาสั่งนิพจน์n = atoi (gets (numstr ) ); หมายถึงใช้ฟังก์ชันมาตรฐาน
แปลงค่าอักขระในหน่วยความจาตัวแปรเป็นตัวเลขแล้วเก็บค่าที่ได้ใน
หน่วยความจา n
2. การหาค่าผลรวม ซึ่งเป็นค่าสะสมในหน่วยความจาค่าใดนั้นต้องเขียน
คาสั่งให้อยู่ในช่วงการวนซ้าด้วย
- 33. อธิบำย คาสั่งนิพจน์ n = atoi (gets (numstr) ) ; คือรับค่าข้อมูลประเภท
อักขระลงหน่วยความจาตัวแปรnumstr แล้วนาค่านั้น มาแปลงเป็นตัวเลข
ด้วยฟังก์ชัน atoi ( )