SlideShare a Scribd company logo
1 of 44
Download to read offline
1. ประสิทธิภาพการเก็บข้อมูลแบบตัวแปรชุด

          ตัวแปรชุดหรือเรียกว่า ตัวแปรแบบอาร์เรย์ ( Array Variable) มีลกษณะั
เป็นข้อมูลโครงสร้างชนิดหนึ่ง ประกอบไปด้วยข้อมูลชนิดพื้นฐานหลายๆตัวรวม
กลุ่มกัน ข้อมูลแต่ละตัวนั้นเรียกว่า อีลีเมนต์(Element) และทุกอีลีเมนต์นั้น ต้อง
เป็นข้อมูลชนิดเดียวกัน
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 ] ;
1.1 คาสั่งกาหนดลักษณะตัวแปรชุด (ต่อ)
อธิบาย
         type          คือชนิดข้อมูลพื้นฐาน เช่น int, float, char
         array_name    คือชื่อตัวแปรชุด
         [n]           คือจานวนตารางข้อมูล
         [r]           คือจานวนแถวของตารางข้อมูล
         [c]           คือจานวนคอลัมน์ของตารางข้อมูล
1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด
           ตารางข้อมูลเป็นพื้นที่ที่ระบบจองพื้นที่ใช้งานด้านจัดเก็บข้อมูลของ
ตัวแปรชุด โดยเลียนแบบการดาเนินงานแบบตารางเมตริกทางคณิตศาสตร์
อธิบายลักษณะตารางจัดเก็บข้อมูลแต่ละมิติ ดังนี้
    1) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 1 มิติ
            ตัวอย่างคาสั่ง จองพื้นที่ เก็บข้อมูลเลขจานวนเต็ม 5 พื้นที่ ให้ตัวแปร
 ชุดชื่อ a ตารางข้อมูลแบบ 1 มิติ          int a [ 5 ] ;
                      แสดงลักษณะตารางข้อมูลในตัวแปรชุด 1 มิติ
                     a[0]       a[1]       a[2]       a[3]       a[4]
                    ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ...
1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด (ต่อ)
   2) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 2 มิติ
      ตัวอย่างคาสั่ง จองพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ a
ตารางข้อมูลขนาดพื้นที่ 2 แถว 4 คอลัมน์
                         int a [ 2 ] [ 4 ] ;
 แสดงลักษณะตารางข้อมูลในตัวแปรชุด 2 มิติ ขนาด 2 แถว 4 คอลัมน์
                 คอลัมน์ 0     คอลัมน์ 1         คอลัมน์ 2       คอลัมน์ 3
                 a[0][0]        a [ 0 ] [1 ]      a [ 0 ] [2 ]   a [ 0 ] [3 ]   มิติที่ 2
         แถว 0
                  ข้อมูล ...     ข้อมูล ...        ข้อมูล ...     ข้อมูล ...
         แถว 1   a[1][0]        a [ 1 ] [1 ]      a [ 1 ] [2 ]   a [ 1 ] [3 ]
                  ข้อมูล ...     ข้อมูล ...        ข้อมูล ...     ข้อมูล ...
                                     มิติที่ 1
1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด (ต่อ)
    3) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 3 มิติ
           ตัวอย่างคาสั่ง จองพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ a
 ตารางข้อมูลขนาดพื้นที่ 2 แถว 2 คอลัมน์ 2 ตารางข้อมูล
                           int a [ 2 ] [ 2 ] [ 2] ;
แสดงลักษณะตารางข้อมูลในตัวแปรชุด 3 มิติ ขนาด 2 แถว 2 คอลัมน์ 2 ตาราง
         คอลัมน์ 0           คอลัมน์ 1           คอลัมน์ 0            คอลัมน์ 1
            ตารางข้อมูลที่ 0 (มิติ 3)               ตารางข้อมูลที่ 1 (มิติ 3)
     a [ 0 ] [ 0 ] [ 0 ] a [ 0 ][0 ] [1 ]    a [ 0 ] [ 1 ] [ 0 ] a [ 0 ][1 ] [1 ]
          ข้อมูล ...        ข้อมูล ...            ข้อมูล ...        ข้อมูล ...
      a [ 1 ] [ 0 ] [ 0 ] a [ 1 ][0 ] [1 ]    a [ 1 ] [ 1 ] [ 0 ] a [ 1 ][1 ] [1 ]
          ข้อมูล ...        ข้อมูล ...            ข้อมูล ...        ข้อมูล ...
1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด
         การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุดหมายถึง การนาข้อมูลลง
ตารางข้อมูล การอ่านค่าข้อมูลจากตารางข้อมูล การกาหนดค่าข้อมูลลงตาราง
ข้อมูล การประมวลผลโดยใช้ข้อมูลจากตัวแปรชุดพื้นที่ที่ต้องการ
     1) การป้อนข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด
                         การป้อนข้อมูลจัดเก็บลงพื้นที่หน่วยความจาตัวแปรชุด
               ต้องอ้างอิงชื่อตัวแปร ตามด้วยหมายเลขพื้นที่ เพื่อความสะดวก
               รวดเร็วในการควบคุมนาเข้าข้อมูลลงพื้นที่หน่วยความจา จึงใช้
               คาสั่งควบคุมวนซ้าช่วยดาเนินงาน ในที่นี้ยกตัวย่าง การวนซ้า
               ควบคุมการนาข้อมูลลงพื้นที่ตัวแปรชุดด้วยคาสั่ง for ดังนี้
1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ)
       ตัวอย่างคาสั่ง วนซ้าเพื่อรีบข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด
แบบ 1 มิติ จานวน 5 พื้นที่
                 for (n = 1 ; n <= 5 ; n++)
                          {
                          printf ( “ Score = “ ) ;
                          scanf ( “ %d “ , &score [ n ] ) ;
                 }

               อธิบาย 1. ควบคุมให้วนซ้า 5 รอบ เพื่อรับข้อมูลคะแนน
               จัดเก็บในหน่วยความจาตัวแปรชุด ชื่อ score จานวน 5 พื้นที่
               จากคาสั่ง scanf
                         2. สาหรับ n ค่าแรก คือ ค่า 1 และเพิ่มค่าทีละ 1 แต่
               ไม่เกิน 5
1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ)
     2) การกาหนดข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด
     กรณีต้องการกาหนดค่าในตารางข้อมูล พื้นที่หน่วยความจาของตัวแปรชุด
เขียนคาสั่งได้ดังนี้
                  1. คาสั่งกาหนดค่าให้ตัวแปรชุดแบบ 1 มิติ
                  รูปแบบ type array_name [ size] = { value list } ;
              2. คาสั่งกาหนดค่าให้ตัวแปรชุดแบบ 2 มิติ
              รูปแบบ type array_name [ r ] [ c ] = { value list } ;

              3. คาสั่งกาหนดค่าให้ตัวแปชุดแบบ 3 มิติ
              รูปแบบ type array_name [ n ] [ r ] [ c ] = { value list } ;
                **Size คือขนาดพื้นที่เก็บข้อมูล
                  value list คือข้อมูลที่กาหนดให้ตัวแปรชุด หากมีหลายค่า ให้ใช้ , คั่น
1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ)
     3) การอ่านข้อมูลจากหน่วยความจาตัวแปรชุด
          การอ่านค่าข้อมูลจากพื้นที่หน่วยความจาของตัวแปรชุดมาแสดงผล ต้อง
อ้างอิงชื่อตัวแปร ตามด้วยหมายเลขพื้นที่เช่นกัน เพื่อความสะดวกรวดเร็วในการ
ควบคุมอ่านค่าข้อมูลจากหน่วยความจาทุกพื้นที่ในตารางข้อมูล จึงใช้วิธีเดียวกัน
กับการนาเสนอข้อมูลลงในพื้นที่หน่วยความจาตัวแปรชุด ด้วยการใช้คาสั่ง
ควบคุมวนซ้า
1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ)
     ตัวอย่างคาสั่ง อ่านข้อมูลจากหน่วยความจาตัวแปรชุด
                for (n = 1 ; n <= 5 ; n++)
                           {
                           printf ( “ Score = %d
                n” , score [ n ] ) ;
                             }
                อธิบาย
                       1. วนซ้าด้วยข้อมูลคะแนนจากหน่วยความจาตัวแปรชุด
                ชื่อ score จานวน 5 พื้นที่ จากคาสั่ง
                printf ( “ Score = %d n” , score [ n ] ) ;
                       2. สาหรับ n ค่าแรก คือค่า 1 และเพิ่มค่าทีละ 1 แต่ไม่เกิน 5
2. ประสิทธิภาพการเก็บข้อมูลแบบกลุ่มอักขระ
         ตัวแปรแบบกลุ่มอักขระ หรือเรียกว่า ตัวแปรแบบสตริง
(String Variable) เป็นข้อมูลตัวแปรชุดประเภทหนึ่งที่มีลักษณะเป็นข้อมูล
ประเภทข้อความ ประกอบด้วยอักขระมากกว่า 1 ตัว ใช้เนื้อที่ 1อักขระต่อ
1 ไบต์ การสิ้นสุดกลุ่มข้อมูลประเภทข้อความด้วยการกดแป้น Enter ระบบ
จะแทนค่าในหน่วยความจา ด้วยสัญลักษณ์ “ 0 ” ดังนั้น การกาหนดขนาด
พื้นที่ให้ข้อความ ต้องคานวณพื้นที่บวก 1 ค่าไว้เสมอ
2.1 คาสั่งกาหนดลักษณะตัวแปรแบบกลุ่มอักขระ
        การกาหนดลักษณะของตัวแปรกลุ่มอักขระ เป็นการจองพื้นที่ขนาด
ตารางข้อมูลเพื่อใช้ในการจัดเก็บกลุ่มข้อมูลเฉพาะอักขระเท่านั้น ยกตัวอย่างตัว
แปรแบบ 1 มิติ และ 2 มิติ ดังนี้
             1) คาสั่งกาหนดตัวแปรกลุ่มอักขระแบบ 1 มิติ
             รูปแบบ char array_name [r] ;
              2) คาสั่งกาหนดตัวแปรกลุ่มอักขระแบบ 2 มิติ
              รูปแบบ char array_name [r] [ c ] ;
                อธิบาย
                          array_name คือชื่อตัวแปรแบบกลุ่มอักขระ
                          [r]          คือจานวนแถวของตารางข้อมูล
                          [c]          คือจานวนคอลัมน์ของตารางข้อมูล
2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ
         การเขียนคาสั่งในโปรแกรมให้จัดเก็บค่าข้อมูลเฉพาะกลุ่มอักขระ ใน
ตารางข้อมูลที่จองพื้นที่ไว้โดยไม่ต้องป้อนข้อมูลนั้นๆ ผ่านทางแป้นพิมพ์ เขียน
คาสั่งดังนี้
          1) คาสั่งกาหนดค่าตัวแปรแบบกลุ่มอักขระ 1 มิติ
          รูปแบบ char array_name [size] = “ string constant “ ;
         ตัวอย่างคาสั่ง กาหนดข้อมูลตัวอักษร “ X Y Z “ ให้จัดเก็บในตัวแปรชุด
ชื่อ b                char b [4] = “ X Y Z “ ;
                          แสดงลักษณะการเก็บข้อมูลในตารางข้อมูลตัวแปรชุด
                  ประเภทกลุ่มอักขระแบบ 1 มิติ
                            a[0]       a[1]         a[2]       a[3]
                           ข้อมูล X   ข้อมูล Y     ข้อมูล Z   ข้อมูล 0
                           0 คือ ค่า null character
2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ(ต่อ)
         2) คาสั่งกาหนดค่าตัวแปรแบบกลุ่มอักขระ 2 มิติ
         รูปแบบ char array_name [ r ] [ c ] = { “ string constant list “ } ;
  อธิบาย
       array_name               คือชื่อตัวแปรแบบกลุ่มอักขระ
       string constant list     คือข้อมูลชนิดอักขระ หากมีหลายรายการให้ใช้ , คั่น
       [r]                      คือจานวนแถวของตารางข้อมูล
       [c]                      คือจานวนคอลัมน์ของตารางข้อมูล
       Size                     คือขนาดพื้นที่เก็บข้อมูล
2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ(ต่อ)
      ตัวอย่างคาสั่ง กาหนดให้จัดเก็บข้อมูล “ABC” , “DEF” ลงหน่วยความจา
ตัวแปรชุด char a [ 2 ] [ 4 ] = { “ ABC “ ,
                                  “DEF “ } ;
      แสดงลักษณะการเก็บข้อมูลในตารางตัวแปรชุดประเภทกลุ่มอักขระ
แบบ 2 มิติ
                     คอลัมน์ 0   คอลัมน์ 1        คอลัมน์ 2      คอลัมน์ 3
                     a[0][0]      a [ 0 ] [1 ]   a [ 0 ] [2 ]   a [ 0 ] [3 ]
             แถว 0                                                             มิติที่ 2
                      ข้อมูล A     ข้อมูล B       ข้อมูล C       ข้อมูล 0
                     a[1][0]      a [ 1 ] [1 ]   a [ 1 ] [2 ]   a [ 1 ] [3 ]
             แถว 1
                      ข้อมูล D     ข้อมูล E       ข้อมูล F       ข้อมูล 0
                                 มิติที่ 1
2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ
        ตัวแปรชุดกลุ่มอักขระ ใช้วิธีการอ้างอิงหน่วยความจาเช่นเดียวกับตัว
แปรชุดแบบอื่นๆ และใช้คาสั่ง for ควบคุมการวนซ้าดาเนินงานกับข้อมูล ดังนี้
    1) การกาหนดข้อมูลให้ตัวแปรกลุ่มอักขระ และอ่านค่ามาใช้งาน
         ตัวอย่างคาสั่ง กาหนดข้อมูลจัดเก็บลงหน่วยความจาตัวแปรชุดกลุ่ม
    อักขระ 2 มิติ
 char name [ 5 ] [ 20 ] = { “Panya, Pawat, Pattraporn, Patcharawarai, Pilin “ } ;
2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ)
         ตัวอย่างคาสั่ง ควบคุมให้วนซ้าอ่านค่าข้อมูลจากหน่วยความจา
 ตัวแปรชุดกลุ่มอักขระ 2 มิติ
                    for (i = 0 ; i < 4 ; i++)
                              {
                              printf ( “ %d ” , i+1 ) ;
                               printf ( “ %P n ” ,
                    name [ i ] ) ;
                                }
2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ)
    2) การป้อนค่าและอ่านค่าจากหน่วยความจาตัวแปรชุดกลุ่มอักขระ
ตัวอย่างคาสั่ง จองพื้นที่หน่วยความจาให้ตัวแปรชุดกลุ่มอักขระลักษณะ 2 มิติ
                          char name [ 5 ] [ 20 ] ;
ตัวอย่างคาสั่ง วนซ้ารับค่าจากแป้นพิมพ์ เพื่อจัดเก็บลงพื้นที่หน่วยความจาตัว
แปรชุดกลุ่มอักขระ
                           for (i = 0 ; i < 4 ; i++)
                                     {
                                     printf ( “ name = > ” ) ;
                                      gets ( name [ i ] ) ;
                                       }
2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ)
        ตัวอย่างคาสั่ง วนซ้าอ่านค่าจากพื้นที่หน่วยความจาตัวแปรชุดกลุ่ม
 อักขระมาแสดงผล
                 for (i = 0 ; i < 4 ; i++)
                           {
                           printf ( “ %d ” , i+1 ) ;
                            printf ( “ %P n ” , name [ i ] ) ;
                             }
3.กรณีศึกษาการใช้ตัวแปรชุด
      3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบ 1 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อนาข้อมูลคะแนนนักเรียน 5 ราย จัดเก็บ
        ลงหน่วยความจาตัวแปรชุด แล้วอ่านค่าข้อมูลคะแนนนักเรียนทั้ง 5 ราย
        จากหน่วยความจาตัวแปรชุดมาแสดงที่จอภาพ
3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบ 1 มิต(ต่อ)
                         ิ




           รูปผังงานที่ 5.1 ผังงานจากโปรแกรมตัวอย่างที่ 5.1
3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
 ความจาตัวแปรชุดแบบ 1 มิต(ต่อ)
                          ิ
ตัวอย่างโปรแกรมที่ 5.1 กรณีศึกษาโปรแกรมระบบงาน ป้อนและอ่านข้อมูล จาก
ตารางพื้นที่ตัวแปรชุด 1 มิติ
3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบ 1 มิต(ต่อ)
                         ิ




          อธิบาย โปรแกรมนี้ควบคุมการทางานเป็นค่าคงที่ในโปรแกรม
          คือ 5 รอบ
3.2 กรณีศึกษา การอ้างอิงข้อมูลประเภทค่าคงที่ในหน่วย
ความจาตัวแปรชุดแบบ 1 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อกาหนดค่าคะแนนนักเรียน 5 รายในตัว
        โปรแกรม ดังนี้ 15.5, 19.5, 10.0, 12.5, 19.7 แล้วอ่านข้อมูลที่นาไปจัดเก็บ
        ในตารางข้อมูลนั้นมาแสดงผลที่จอภาพ
ตัวอย่างโปรแกรมที่ 5.2 กรณีศึกษาโปรแกรมระบบงาน กาหนดข้อมูล
และอ่านค่าจากหน่วยความจาตัวแปรชุด 1 มิติ




      อธิบาย ระบบวนซ้าอ่านค่าข้อมูล คะแนนนักเรียนจานวน 5 ราย
      จากหน่วยความจาตัวแปรชุดจากที่เขียน คาสั่งกาหนดข้อมูลไว้ในโปรแกรม
3.3 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบ 2 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อป้อนข้อมูลคะแนนนักเรียน 2 ราย แต่ละ
        รายต้องป้อนคะแนนจานวน 3 วิชา บันทึกลงหน่วยความจาแบบตัวแปรชุด
        แล้วอ่านค่าจากหน่วยความจาตัวแปรชุดแสดงผลที่จอภาพ
         วิเคราะห์ตารางข้อมูลจากโจทย์ต้องใช้ตัวแปรชุดขนาด 2 มิติ ขนาด 2 แถว
 x 3 คอลัมน์ ได้ตารางข้อมูลขนาด 6 ห้องคือ
รูปผังงานที่ 5.2 ผังงานโปรแกรมตัวอย่างที่ 5.3
3.4 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วยความจา
ตัวแปรชุดแบบ 1 มิติกาหนดรอบวนซ้าโดยผู้ใช้ระบบงานโปรแกรม
โจทย์ : จงเขียนขั้นตอนการสร้างงานโปรแกรม เพื่อป้อนข้อมูลชื่อรายการวัตถุดิบ
และราคาของวัตถุดิบที่ใช้ ดาเนินงานตามจานวนที่ผู้ใช้ระบบระบุจานวนรายการ
แล้วให้พิมพ์สรุปข้อมูลที่บันทึกทั้งหมดพร้อมพิมพ์ผลรวมจานวนเงินวัตถุดิบ
ทั้งหมดที่จัดซื้อในครั้งนี้ การแสดงผลทางจอภาพให้ออกแบบตามความเหมาะสม
ของงาน              กาหนดคุณสมบัติตัวแปร
                        ข้อมูล         ชื่อหน่วยความจา            ชนิดข้อมูล
                 จานวนรายการวตถุดิบ            n              ตัวเลขจานวนเต็ม
                    ลาดับวัตถุดิบ              I              ตัวเลขจานวนเต็ม
                     ชื่อวัตถุดิบ           Material     ตัวแปรชุด 1 มิติ กลุ่มอักขระ
                  ราคาต้นทุนวัตถุดิบ         Price       ตัวแปรชุด 1 มิติ จานวนเต็ม
                    ผลรวมต้นทุน              Sum              ตัวเลขจานวนเต็ม
รูปผังงานที่ 5.3 ผังงานกรณีศึกษาจากโปรแกรมตัวอย่างที่ 5.4
ตัวอย่างโปรแกรมที่ 5.4 กรณีศึกษาโปรแกรมระบบงานป้อนรายการและ
ราคาวัตถุดิบลงตัวแปรชุดแล้วอ่านค่าสรุปรายงานพร้อมพิมพ์ผลรวมราคาวัตถุดิบ
ทั้งหมด
ตัวอย่างโปรแกรมที่ 5.4 (ต่อ)
อธิบาย 1. คาสั่งนิพจน์ n = atoi ( gets (numstr ) );
          หมายถึงใช้ฟังก์ชันมาตรฐาน แปลงค่าอักขระในหน่วยความจาตัวแปร
          เป็นตัวเลขแล้วเก็บค่าที่ได้ในหน่วยความจา n
       2. การหาค่าผลรวม ซึ่งเป็นค่าสะสมในหน่วยความจาค่าใดนั้น ต้องเขียน
          คาสั่งให้อยู่ในช่วงการวนซ้าด้วย
3.5 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบ 3 มิติ
โจทย์ : จงเขียนโปรแกรมระบบงาน เพื่อป้อนคะแนนที่ได้จากการทดสอบนักเรียน
กลุ่มตัวอย่างจานวน 2 กลุ่มกลุ่มละ 3 คน พร้อมคานวณหาผลรวมคะแนนนักเรียน
แต่ละรายด้วยตัวอย่างลักษณะข้อมูลในตารางข้อมูล
ตัวอย่างโปรแกรมที่ 5.5 กรณีศึกษาโปรแกรมระบบงานป้อนและอ่านข้อมูล
จากหน่วยความจาตัวแปรชุด 3 มิติ
ตัวอย่างโปรแกรมที่ 5.5 (ต่อ)




อธิบาย การเขียนคาสั่ง snum = 0 ; เพื่อล้างค่าเดิมทิ้ง ก่อนหาค่าสะสมค่าอื่น
4.กรณีศึกษาการใช้ตัวแปรกลุ่มอักขระ
      4.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทค่าคงที่ในหน่วย
ความจาตัวแปรชุดแบบกลุ่มอักขระ
โจทย์ : จงเขียนงานเพื่อกาหนดชื่อนักเรียน 5 รายคือ {“Somsri”, “Somjai”,
“Somnuk”, “Somjit”, “Somkit”} เข้าไปเก็บในหน่วยความจาตัวแปรชุด แล้ว
แสดงผลข้อมูลที่จอภาพ
ตัวอย่างโปรแกรมที่ 5.6 กรณีศึกษาโปรแกรมระบบงานกาหนดข้อมูล
ลงตัวแปรชุด แล้วนามาแสดงผล
4.2 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย
ความจาตัวแปรชุดแบบกลุมอักขระ
                      ่
โจทย์ : จงเขียนงานโปรแกรมป้อนข้อมูลชื่อนักเรียนจานวน 5 ราย เข้าไปเก็บใน
หน่วยความจาตัวแปรชุดแล้วอ่านข้อมูลที่จัดเก็บนั้นพิมพ์สรุปที่จอภาพ
    กาหนดคุณสมบัติตัวแปร
                    ข้อมูล     ชื่อหน่วยความจา            ชนิดข้อมูล
              จานวนนักเรียน            n              ตัวเลขจานวนเต็ม
                    ลาดับ              I              ตัวเลขจานวนเต็ม
                ชื่อนักเรียน         name        ตัวแปรชุด 1 มิติ กลุ่มอักขระ
รูปผังงานที่ 5.4 ผังงานกรณีศึกษาจากโปรแกรมตัวอย่างที่ 5.7
ตัวอย่างโปรแกรมที่ 5.7 กรณีศึกษาโปรแกรมระบบงานรับข้อมูล จัดเก็บ
ลงหน่วยความจาตัวแปรชุด แล้วอ่านค่าเพื่อแสดงผล
ตัวอย่างโปรแกรมที่ 5.7 (ต่อ)




          อธิบาย คาสั่งนิพจน์ n = atoi (gets (numstr) ) ;
               คือรับค่าข้อมูลประเภทอักขระ ลงหน่วยความจาตัวแปร numstr
          แล้วนาค่านั้น มาแปลงเป็นตัวเลขด้วยฟังก์ชัน atoi ( )
1. นายจิตรเทพ           สุกุลธนาศร     เลขที่ 5
 2. นายธนวัส             อ่อนเอี่ยม     เลขที่ 6
3. นางสาวจิตรทิพย์      สุกุลธนาศร     เลขที่ 23
4. นางสาวธนัชกัญ        พูลผล          เลขที่ 24
5. นางสาวพัชรวลัย       ดีประชา        เลขที่ 25
6. นางสาวภัทราพร        เนตรสว่าง      เลขที่ 26
7. นางสาวศศิวิมล        สมบูรณ์ศิริ    เลขที่ 27
             ชั้นมัธยมศึกษาปีที่ 6/2

More Related Content

What's hot

บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระบทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระHeart Kantapong
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระSirinat Sansom
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1Nuchy Suchanuch
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระBoOm mm
 
งานนนนนนนนนนน
งานนนนนนนนนนนงานนนนนนนนนนน
งานนนนนนนนนนนPongspak kamonsri
 
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริงบทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริงdefeat overcome
 
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
บทที่  5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1บทที่  5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1Little Tukta Lita
 
ตัวแปรชุดและตัวแปรอักขระ PPT
ตัวแปรชุดและตัวแปรอักขระ PPTตัวแปรชุดและตัวแปรอักขระ PPT
ตัวแปรชุดและตัวแปรอักขระ PPTAreeya Onnom
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระWorapod Khomkham
 

What's hot (13)

บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระบทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
ตัวแปลชุดและตัวแปลอักขระ
ตัวแปลชุดและตัวแปลอักขระตัวแปลชุดและตัวแปลอักขระ
ตัวแปลชุดและตัวแปลอักขระ
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
งานนนนนนนนนนน
งานนนนนนนนนนนงานนนนนนนนนนน
งานนนนนนนนนนน
 
ข้อมูลชนิดอาร์เรย์และสตริง
ข้อมูลชนิดอาร์เรย์และสตริงข้อมูลชนิดอาร์เรย์และสตริง
ข้อมูลชนิดอาร์เรย์และสตริง
 
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริงบทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง
 
DML
DMLDML
DML
 
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
บทที่  5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1บทที่  5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
 
ตัวแปรชุดและตัวแปรอักขระ PPT
ตัวแปรชุดและตัวแปรอักขระ PPTตัวแปรชุดและตัวแปรอักขระ PPT
ตัวแปรชุดและตัวแปรอักขระ PPT
 
4
44
4
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 

Similar to บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ

บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระบทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระMook Sasivimon
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)sirada nilbut
 
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระ
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระสื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระ
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระเกศรา ลิขิตสกุลวงศ์
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระPongspak kamonsri
 
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระ
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระงานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระ
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระPongspak kamonsri
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระPongspak kamonsri
 
งานคอม
งานคอมงานคอม
งานคอมthanaluhk
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระPongspak kamonsri
 
งานกลุ่มคอม กลุ่ม-5
งานกลุ่มคอม กลุ่ม-5งานกลุ่มคอม กลุ่ม-5
งานกลุ่มคอม กลุ่ม-5Thachanok Plubpibool
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ Areeya Onnom
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระwebsite22556
 
ตัวแปรชุด
ตัวแปรชุดตัวแปรชุด
ตัวแปรชุดKukkik Kanya
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระAreeya Onnom
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระAreeya Onnom
 

Similar to บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ (20)

บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระบทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)
ตัวแปรชุดและตัวแปรกลุ่มอักขระ คอมกาน (1)
 
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระ
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระสื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระ
สื่อการนำเสนอเรื่องตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระ
 
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระ
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระงานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระ
งานนนนนนนนนนน ตัวแปรชุดและตัวกลุ่มอักขระ
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระ
 
งานคอม
งานคอมงานคอม
งานคอม
 
ตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระตัวแปรชุดและตัวกลุ่มอักขระ
ตัวแปรชุดและตัวกลุ่มอักขระ
 
งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8
 
งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8งานทำ Blog บทที่ 8
งานทำ Blog บทที่ 8
 
งานกลุ่มคอม กลุ่ม-5
งานกลุ่มคอม กลุ่ม-5งานกลุ่มคอม กลุ่ม-5
งานกลุ่มคอม กลุ่ม-5
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ
 
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระตัวแปรชุดและตัวแปรกลุ่มอักขระ
ตัวแปรชุดและตัวแปรกลุ่มอักขระ
 
ตัวแปรชุด
ตัวแปรชุดตัวแปรชุด
ตัวแปรชุด
 
Chapter2
Chapter2Chapter2
Chapter2
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ
 
Power point
Power pointPower point
Power point
 
Power point
Power pointPower point
Power point
 

More from Mook Sasivimon

More from Mook Sasivimon (6)

งานย่อย2
งานย่อย2งานย่อย2
งานย่อย2
 
Java 7&12 6 2
Java 7&12 6 2Java 7&12 6 2
Java 7&12 6 2
 
ฟังก์ชัน27
ฟังก์ชัน27ฟังก์ชัน27
ฟังก์ชัน27
 
It1
It1It1
It1
 
It1
It1It1
It1
 
It1
It1It1
It1
 

บทที่ 5 ตัวแปรชุดและตัวแปรกลุ่มอักขระ

  • 1.
  • 2. 1. ประสิทธิภาพการเก็บข้อมูลแบบตัวแปรชุด ตัวแปรชุดหรือเรียกว่า ตัวแปรแบบอาร์เรย์ ( Array Variable) มีลกษณะั เป็นข้อมูลโครงสร้างชนิดหนึ่ง ประกอบไปด้วยข้อมูลชนิดพื้นฐานหลายๆตัวรวม กลุ่มกัน ข้อมูลแต่ละตัวนั้นเรียกว่า อีลีเมนต์(Element) และทุกอีลีเมนต์นั้น ต้อง เป็นข้อมูลชนิดเดียวกัน
  • 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 ] ;
  • 4. 1.1 คาสั่งกาหนดลักษณะตัวแปรชุด (ต่อ) อธิบาย type คือชนิดข้อมูลพื้นฐาน เช่น int, float, char array_name คือชื่อตัวแปรชุด [n] คือจานวนตารางข้อมูล [r] คือจานวนแถวของตารางข้อมูล [c] คือจานวนคอลัมน์ของตารางข้อมูล
  • 5. 1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด ตารางข้อมูลเป็นพื้นที่ที่ระบบจองพื้นที่ใช้งานด้านจัดเก็บข้อมูลของ ตัวแปรชุด โดยเลียนแบบการดาเนินงานแบบตารางเมตริกทางคณิตศาสตร์ อธิบายลักษณะตารางจัดเก็บข้อมูลแต่ละมิติ ดังนี้ 1) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 1 มิติ ตัวอย่างคาสั่ง จองพื้นที่ เก็บข้อมูลเลขจานวนเต็ม 5 พื้นที่ ให้ตัวแปร ชุดชื่อ a ตารางข้อมูลแบบ 1 มิติ int a [ 5 ] ; แสดงลักษณะตารางข้อมูลในตัวแปรชุด 1 มิติ a[0] a[1] a[2] a[3] a[4] ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ...
  • 6. 1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด (ต่อ) 2) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 2 มิติ ตัวอย่างคาสั่ง จองพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ a ตารางข้อมูลขนาดพื้นที่ 2 แถว 4 คอลัมน์ int a [ 2 ] [ 4 ] ; แสดงลักษณะตารางข้อมูลในตัวแปรชุด 2 มิติ ขนาด 2 แถว 4 คอลัมน์ คอลัมน์ 0 คอลัมน์ 1 คอลัมน์ 2 คอลัมน์ 3 a[0][0] a [ 0 ] [1 ] a [ 0 ] [2 ] a [ 0 ] [3 ] มิติที่ 2 แถว 0 ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ... แถว 1 a[1][0] a [ 1 ] [1 ] a [ 1 ] [2 ] a [ 1 ] [3 ] ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ... มิติที่ 1
  • 7. 1.2 ลักษณะตารางข้อมูลในหน่วยความจาตัวแปรชุด (ต่อ) 3) ลักษณะตารางข้อมูลตัวแปรชุดแบบ 3 มิติ ตัวอย่างคาสั่ง จองพื้นที่เก็บข้อมูลเลขจานวนเต็ม ให้ตัวแปรชุดชื่อ a ตารางข้อมูลขนาดพื้นที่ 2 แถว 2 คอลัมน์ 2 ตารางข้อมูล int a [ 2 ] [ 2 ] [ 2] ; แสดงลักษณะตารางข้อมูลในตัวแปรชุด 3 มิติ ขนาด 2 แถว 2 คอลัมน์ 2 ตาราง คอลัมน์ 0 คอลัมน์ 1 คอลัมน์ 0 คอลัมน์ 1 ตารางข้อมูลที่ 0 (มิติ 3) ตารางข้อมูลที่ 1 (มิติ 3) a [ 0 ] [ 0 ] [ 0 ] a [ 0 ][0 ] [1 ] a [ 0 ] [ 1 ] [ 0 ] a [ 0 ][1 ] [1 ] ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ... a [ 1 ] [ 0 ] [ 0 ] a [ 1 ][0 ] [1 ] a [ 1 ] [ 1 ] [ 0 ] a [ 1 ][1 ] [1 ] ข้อมูล ... ข้อมูล ... ข้อมูล ... ข้อมูล ...
  • 8. 1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุดหมายถึง การนาข้อมูลลง ตารางข้อมูล การอ่านค่าข้อมูลจากตารางข้อมูล การกาหนดค่าข้อมูลลงตาราง ข้อมูล การประมวลผลโดยใช้ข้อมูลจากตัวแปรชุดพื้นที่ที่ต้องการ 1) การป้อนข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด การป้อนข้อมูลจัดเก็บลงพื้นที่หน่วยความจาตัวแปรชุด ต้องอ้างอิงชื่อตัวแปร ตามด้วยหมายเลขพื้นที่ เพื่อความสะดวก รวดเร็วในการควบคุมนาเข้าข้อมูลลงพื้นที่หน่วยความจา จึงใช้ คาสั่งควบคุมวนซ้าช่วยดาเนินงาน ในที่นี้ยกตัวย่าง การวนซ้า ควบคุมการนาข้อมูลลงพื้นที่ตัวแปรชุดด้วยคาสั่ง for ดังนี้
  • 9. 1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ) ตัวอย่างคาสั่ง วนซ้าเพื่อรีบข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด แบบ 1 มิติ จานวน 5 พื้นที่ for (n = 1 ; n <= 5 ; n++) { printf ( “ Score = “ ) ; scanf ( “ %d “ , &score [ n ] ) ; } อธิบาย 1. ควบคุมให้วนซ้า 5 รอบ เพื่อรับข้อมูลคะแนน จัดเก็บในหน่วยความจาตัวแปรชุด ชื่อ score จานวน 5 พื้นที่ จากคาสั่ง scanf 2. สาหรับ n ค่าแรก คือ ค่า 1 และเพิ่มค่าทีละ 1 แต่ ไม่เกิน 5
  • 10. 1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ) 2) การกาหนดข้อมูลลงพื้นที่หน่วยความจาตัวแปรชุด กรณีต้องการกาหนดค่าในตารางข้อมูล พื้นที่หน่วยความจาของตัวแปรชุด เขียนคาสั่งได้ดังนี้ 1. คาสั่งกาหนดค่าให้ตัวแปรชุดแบบ 1 มิติ รูปแบบ type array_name [ size] = { value list } ; 2. คาสั่งกาหนดค่าให้ตัวแปรชุดแบบ 2 มิติ รูปแบบ type array_name [ r ] [ c ] = { value list } ; 3. คาสั่งกาหนดค่าให้ตัวแปชุดแบบ 3 มิติ รูปแบบ type array_name [ n ] [ r ] [ c ] = { value list } ; **Size คือขนาดพื้นที่เก็บข้อมูล value list คือข้อมูลที่กาหนดให้ตัวแปรชุด หากมีหลายค่า ให้ใช้ , คั่น
  • 11. 1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ) 3) การอ่านข้อมูลจากหน่วยความจาตัวแปรชุด การอ่านค่าข้อมูลจากพื้นที่หน่วยความจาของตัวแปรชุดมาแสดงผล ต้อง อ้างอิงชื่อตัวแปร ตามด้วยหมายเลขพื้นที่เช่นกัน เพื่อความสะดวกรวดเร็วในการ ควบคุมอ่านค่าข้อมูลจากหน่วยความจาทุกพื้นที่ในตารางข้อมูล จึงใช้วิธีเดียวกัน กับการนาเสนอข้อมูลลงในพื้นที่หน่วยความจาตัวแปรชุด ด้วยการใช้คาสั่ง ควบคุมวนซ้า
  • 12. 1.3 การอ้างอิงพื้นที่หน่วยความจาของตัวแปรชุด(ต่อ) ตัวอย่างคาสั่ง อ่านข้อมูลจากหน่วยความจาตัวแปรชุด for (n = 1 ; n <= 5 ; n++) { printf ( “ Score = %d n” , score [ n ] ) ; } อธิบาย 1. วนซ้าด้วยข้อมูลคะแนนจากหน่วยความจาตัวแปรชุด ชื่อ score จานวน 5 พื้นที่ จากคาสั่ง printf ( “ Score = %d n” , score [ n ] ) ; 2. สาหรับ n ค่าแรก คือค่า 1 และเพิ่มค่าทีละ 1 แต่ไม่เกิน 5
  • 13. 2. ประสิทธิภาพการเก็บข้อมูลแบบกลุ่มอักขระ ตัวแปรแบบกลุ่มอักขระ หรือเรียกว่า ตัวแปรแบบสตริง (String Variable) เป็นข้อมูลตัวแปรชุดประเภทหนึ่งที่มีลักษณะเป็นข้อมูล ประเภทข้อความ ประกอบด้วยอักขระมากกว่า 1 ตัว ใช้เนื้อที่ 1อักขระต่อ 1 ไบต์ การสิ้นสุดกลุ่มข้อมูลประเภทข้อความด้วยการกดแป้น Enter ระบบ จะแทนค่าในหน่วยความจา ด้วยสัญลักษณ์ “ 0 ” ดังนั้น การกาหนดขนาด พื้นที่ให้ข้อความ ต้องคานวณพื้นที่บวก 1 ค่าไว้เสมอ
  • 14. 2.1 คาสั่งกาหนดลักษณะตัวแปรแบบกลุ่มอักขระ การกาหนดลักษณะของตัวแปรกลุ่มอักขระ เป็นการจองพื้นที่ขนาด ตารางข้อมูลเพื่อใช้ในการจัดเก็บกลุ่มข้อมูลเฉพาะอักขระเท่านั้น ยกตัวอย่างตัว แปรแบบ 1 มิติ และ 2 มิติ ดังนี้ 1) คาสั่งกาหนดตัวแปรกลุ่มอักขระแบบ 1 มิติ รูปแบบ char array_name [r] ; 2) คาสั่งกาหนดตัวแปรกลุ่มอักขระแบบ 2 มิติ รูปแบบ char array_name [r] [ c ] ; อธิบาย array_name คือชื่อตัวแปรแบบกลุ่มอักขระ [r] คือจานวนแถวของตารางข้อมูล [c] คือจานวนคอลัมน์ของตารางข้อมูล
  • 15. 2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ การเขียนคาสั่งในโปรแกรมให้จัดเก็บค่าข้อมูลเฉพาะกลุ่มอักขระ ใน ตารางข้อมูลที่จองพื้นที่ไว้โดยไม่ต้องป้อนข้อมูลนั้นๆ ผ่านทางแป้นพิมพ์ เขียน คาสั่งดังนี้ 1) คาสั่งกาหนดค่าตัวแปรแบบกลุ่มอักขระ 1 มิติ รูปแบบ char array_name [size] = “ string constant “ ; ตัวอย่างคาสั่ง กาหนดข้อมูลตัวอักษร “ X Y Z “ ให้จัดเก็บในตัวแปรชุด ชื่อ b char b [4] = “ X Y Z “ ; แสดงลักษณะการเก็บข้อมูลในตารางข้อมูลตัวแปรชุด ประเภทกลุ่มอักขระแบบ 1 มิติ a[0] a[1] a[2] a[3] ข้อมูล X ข้อมูล Y ข้อมูล Z ข้อมูล 0 0 คือ ค่า null character
  • 16. 2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ(ต่อ) 2) คาสั่งกาหนดค่าตัวแปรแบบกลุ่มอักขระ 2 มิติ รูปแบบ char array_name [ r ] [ c ] = { “ string constant list “ } ; อธิบาย array_name คือชื่อตัวแปรแบบกลุ่มอักขระ string constant list คือข้อมูลชนิดอักขระ หากมีหลายรายการให้ใช้ , คั่น [r] คือจานวนแถวของตารางข้อมูล [c] คือจานวนคอลัมน์ของตารางข้อมูล Size คือขนาดพื้นที่เก็บข้อมูล
  • 17. 2.2 คาสั่งกาหนดค่าให้ตัวแปรชุดแบบกลุ่มอักขระ(ต่อ) ตัวอย่างคาสั่ง กาหนดให้จัดเก็บข้อมูล “ABC” , “DEF” ลงหน่วยความจา ตัวแปรชุด char a [ 2 ] [ 4 ] = { “ ABC “ , “DEF “ } ; แสดงลักษณะการเก็บข้อมูลในตารางตัวแปรชุดประเภทกลุ่มอักขระ แบบ 2 มิติ คอลัมน์ 0 คอลัมน์ 1 คอลัมน์ 2 คอลัมน์ 3 a[0][0] a [ 0 ] [1 ] a [ 0 ] [2 ] a [ 0 ] [3 ] แถว 0 มิติที่ 2 ข้อมูล A ข้อมูล B ข้อมูล C ข้อมูล 0 a[1][0] a [ 1 ] [1 ] a [ 1 ] [2 ] a [ 1 ] [3 ] แถว 1 ข้อมูล D ข้อมูล E ข้อมูล F ข้อมูล 0 มิติที่ 1
  • 18. 2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ ตัวแปรชุดกลุ่มอักขระ ใช้วิธีการอ้างอิงหน่วยความจาเช่นเดียวกับตัว แปรชุดแบบอื่นๆ และใช้คาสั่ง for ควบคุมการวนซ้าดาเนินงานกับข้อมูล ดังนี้ 1) การกาหนดข้อมูลให้ตัวแปรกลุ่มอักขระ และอ่านค่ามาใช้งาน ตัวอย่างคาสั่ง กาหนดข้อมูลจัดเก็บลงหน่วยความจาตัวแปรชุดกลุ่ม อักขระ 2 มิติ char name [ 5 ] [ 20 ] = { “Panya, Pawat, Pattraporn, Patcharawarai, Pilin “ } ;
  • 19. 2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ) ตัวอย่างคาสั่ง ควบคุมให้วนซ้าอ่านค่าข้อมูลจากหน่วยความจา ตัวแปรชุดกลุ่มอักขระ 2 มิติ for (i = 0 ; i < 4 ; i++) { printf ( “ %d ” , i+1 ) ; printf ( “ %P n ” , name [ i ] ) ; }
  • 20. 2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ) 2) การป้อนค่าและอ่านค่าจากหน่วยความจาตัวแปรชุดกลุ่มอักขระ ตัวอย่างคาสั่ง จองพื้นที่หน่วยความจาให้ตัวแปรชุดกลุ่มอักขระลักษณะ 2 มิติ char name [ 5 ] [ 20 ] ; ตัวอย่างคาสั่ง วนซ้ารับค่าจากแป้นพิมพ์ เพื่อจัดเก็บลงพื้นที่หน่วยความจาตัว แปรชุดกลุ่มอักขระ for (i = 0 ; i < 4 ; i++) { printf ( “ name = > ” ) ; gets ( name [ i ] ) ; }
  • 21. 2.3 การอ้างอิงข้อมูลในตารางข้อมูลตัวแปรชุดกลุ่มอักขระ(ต่อ) ตัวอย่างคาสั่ง วนซ้าอ่านค่าจากพื้นที่หน่วยความจาตัวแปรชุดกลุ่ม อักขระมาแสดงผล for (i = 0 ; i < 4 ; i++) { printf ( “ %d ” , i+1 ) ; printf ( “ %P n ” , name [ i ] ) ; }
  • 22. 3.กรณีศึกษาการใช้ตัวแปรชุด 3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 1 มิติ โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อนาข้อมูลคะแนนนักเรียน 5 ราย จัดเก็บ ลงหน่วยความจาตัวแปรชุด แล้วอ่านค่าข้อมูลคะแนนนักเรียนทั้ง 5 ราย จากหน่วยความจาตัวแปรชุดมาแสดงที่จอภาพ
  • 23. 3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 1 มิต(ต่อ) ิ รูปผังงานที่ 5.1 ผังงานจากโปรแกรมตัวอย่างที่ 5.1
  • 24. 3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 1 มิต(ต่อ) ิ ตัวอย่างโปรแกรมที่ 5.1 กรณีศึกษาโปรแกรมระบบงาน ป้อนและอ่านข้อมูล จาก ตารางพื้นที่ตัวแปรชุด 1 มิติ
  • 25. 3.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 1 มิต(ต่อ) ิ อธิบาย โปรแกรมนี้ควบคุมการทางานเป็นค่าคงที่ในโปรแกรม คือ 5 รอบ
  • 26. 3.2 กรณีศึกษา การอ้างอิงข้อมูลประเภทค่าคงที่ในหน่วย ความจาตัวแปรชุดแบบ 1 มิติ โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อกาหนดค่าคะแนนนักเรียน 5 รายในตัว โปรแกรม ดังนี้ 15.5, 19.5, 10.0, 12.5, 19.7 แล้วอ่านข้อมูลที่นาไปจัดเก็บ ในตารางข้อมูลนั้นมาแสดงผลที่จอภาพ
  • 27. ตัวอย่างโปรแกรมที่ 5.2 กรณีศึกษาโปรแกรมระบบงาน กาหนดข้อมูล และอ่านค่าจากหน่วยความจาตัวแปรชุด 1 มิติ อธิบาย ระบบวนซ้าอ่านค่าข้อมูล คะแนนนักเรียนจานวน 5 ราย จากหน่วยความจาตัวแปรชุดจากที่เขียน คาสั่งกาหนดข้อมูลไว้ในโปรแกรม
  • 28. 3.3 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 2 มิติ โจทย์ : จงเขียนโปรแกรมระบบงานเพื่อป้อนข้อมูลคะแนนนักเรียน 2 ราย แต่ละ รายต้องป้อนคะแนนจานวน 3 วิชา บันทึกลงหน่วยความจาแบบตัวแปรชุด แล้วอ่านค่าจากหน่วยความจาตัวแปรชุดแสดงผลที่จอภาพ วิเคราะห์ตารางข้อมูลจากโจทย์ต้องใช้ตัวแปรชุดขนาด 2 มิติ ขนาด 2 แถว x 3 คอลัมน์ ได้ตารางข้อมูลขนาด 6 ห้องคือ
  • 30. 3.4 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วยความจา ตัวแปรชุดแบบ 1 มิติกาหนดรอบวนซ้าโดยผู้ใช้ระบบงานโปรแกรม โจทย์ : จงเขียนขั้นตอนการสร้างงานโปรแกรม เพื่อป้อนข้อมูลชื่อรายการวัตถุดิบ และราคาของวัตถุดิบที่ใช้ ดาเนินงานตามจานวนที่ผู้ใช้ระบบระบุจานวนรายการ แล้วให้พิมพ์สรุปข้อมูลที่บันทึกทั้งหมดพร้อมพิมพ์ผลรวมจานวนเงินวัตถุดิบ ทั้งหมดที่จัดซื้อในครั้งนี้ การแสดงผลทางจอภาพให้ออกแบบตามความเหมาะสม ของงาน กาหนดคุณสมบัติตัวแปร ข้อมูล ชื่อหน่วยความจา ชนิดข้อมูล จานวนรายการวตถุดิบ n ตัวเลขจานวนเต็ม ลาดับวัตถุดิบ I ตัวเลขจานวนเต็ม ชื่อวัตถุดิบ Material ตัวแปรชุด 1 มิติ กลุ่มอักขระ ราคาต้นทุนวัตถุดิบ Price ตัวแปรชุด 1 มิติ จานวนเต็ม ผลรวมต้นทุน Sum ตัวเลขจานวนเต็ม
  • 34. อธิบาย 1. คาสั่งนิพจน์ n = atoi ( gets (numstr ) ); หมายถึงใช้ฟังก์ชันมาตรฐาน แปลงค่าอักขระในหน่วยความจาตัวแปร เป็นตัวเลขแล้วเก็บค่าที่ได้ในหน่วยความจา n 2. การหาค่าผลรวม ซึ่งเป็นค่าสะสมในหน่วยความจาค่าใดนั้น ต้องเขียน คาสั่งให้อยู่ในช่วงการวนซ้าด้วย
  • 35. 3.5 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบ 3 มิติ โจทย์ : จงเขียนโปรแกรมระบบงาน เพื่อป้อนคะแนนที่ได้จากการทดสอบนักเรียน กลุ่มตัวอย่างจานวน 2 กลุ่มกลุ่มละ 3 คน พร้อมคานวณหาผลรวมคะแนนนักเรียน แต่ละรายด้วยตัวอย่างลักษณะข้อมูลในตารางข้อมูล
  • 37. ตัวอย่างโปรแกรมที่ 5.5 (ต่อ) อธิบาย การเขียนคาสั่ง snum = 0 ; เพื่อล้างค่าเดิมทิ้ง ก่อนหาค่าสะสมค่าอื่น
  • 38. 4.กรณีศึกษาการใช้ตัวแปรกลุ่มอักขระ 4.1 กรณีศึกษาการอ้างอิงข้อมูลประเภทค่าคงที่ในหน่วย ความจาตัวแปรชุดแบบกลุ่มอักขระ โจทย์ : จงเขียนงานเพื่อกาหนดชื่อนักเรียน 5 รายคือ {“Somsri”, “Somjai”, “Somnuk”, “Somjit”, “Somkit”} เข้าไปเก็บในหน่วยความจาตัวแปรชุด แล้ว แสดงผลข้อมูลที่จอภาพ
  • 40. 4.2 กรณีศึกษาการอ้างอิงข้อมูลประเภทตัวแปรในหน่วย ความจาตัวแปรชุดแบบกลุมอักขระ ่ โจทย์ : จงเขียนงานโปรแกรมป้อนข้อมูลชื่อนักเรียนจานวน 5 ราย เข้าไปเก็บใน หน่วยความจาตัวแปรชุดแล้วอ่านข้อมูลที่จัดเก็บนั้นพิมพ์สรุปที่จอภาพ กาหนดคุณสมบัติตัวแปร ข้อมูล ชื่อหน่วยความจา ชนิดข้อมูล จานวนนักเรียน n ตัวเลขจานวนเต็ม ลาดับ I ตัวเลขจานวนเต็ม ชื่อนักเรียน name ตัวแปรชุด 1 มิติ กลุ่มอักขระ
  • 42. ตัวอย่างโปรแกรมที่ 5.7 กรณีศึกษาโปรแกรมระบบงานรับข้อมูล จัดเก็บ ลงหน่วยความจาตัวแปรชุด แล้วอ่านค่าเพื่อแสดงผล
  • 43. ตัวอย่างโปรแกรมที่ 5.7 (ต่อ) อธิบาย คาสั่งนิพจน์ n = atoi (gets (numstr) ) ; คือรับค่าข้อมูลประเภทอักขระ ลงหน่วยความจาตัวแปร numstr แล้วนาค่านั้น มาแปลงเป็นตัวเลขด้วยฟังก์ชัน atoi ( )
  • 44. 1. นายจิตรเทพ สุกุลธนาศร เลขที่ 5 2. นายธนวัส อ่อนเอี่ยม เลขที่ 6 3. นางสาวจิตรทิพย์ สุกุลธนาศร เลขที่ 23 4. นางสาวธนัชกัญ พูลผล เลขที่ 24 5. นางสาวพัชรวลัย ดีประชา เลขที่ 25 6. นางสาวภัทราพร เนตรสว่าง เลขที่ 26 7. นางสาวศศิวิมล สมบูรณ์ศิริ เลขที่ 27 ชั้นมัธยมศึกษาปีที่ 6/2