MyBanner

โฆษณา

วันจันทร์ที่ 11 สิงหาคม พ.ศ. 2557

การตั้งตัวแปรเก็บค่าแบบ Boolean และการใช้งาน :: บทที่ 3 ลักษณะทั่วไปของภาษา OpenOffice / LibreOffice Basic



3.4.9 การตั้งตัวแปรเก็บค่าแบบ Booleanในภาษา OpenOffice / LibreOffice Basic และการใช้งาน
ค่าข้อมูลแบบ Boolean หมายถึง ค่าทางตรรกศาสตร์ ซึ่งมีอยู่ 2 ค่าคือ True (จริง) หรือ False (เท็จ) โดยปรกติ ค่าของ False จะมีค่าเป็น 0 ส่วนค่าอื่นๆ จะเป็น True ทั้งหมด
ในการกำหนดตัวแปรให้มีชนิดเป็นแบบ Boolean จะต่างจากตัวแปรชนิดอื่นๆ ที่กล่าวมาในข้างต้น คือไม่มีสัญลักษณ์พิเศษที่ใช้กำหนดชนิดของข้อมูล แต่สามารถกระทำได้โดยการใช้คำสั่ง As Boolean กำกับตอนท้ายของการกำหนดตัวแปร

ตัวอย่างที่ 3-14 : ตัวอย่างการตั้งตัวแปร Boolean
       ....
       Dim bCheckStatus As Boolean
       ....
       bCheckStatus = Fasle
       ....

3.4.10 การตั้งตัวแปรเก็บค่าแบบ Date และการใช้งาน

ค่าข้อมูลแบบ Date หมายถึง ค่าเกี่ยวกับวันเวลา ในการกำหนดตัวแปรให้มีชนิดเป็นแบบ Date สามารถกระทำได้โดยการใช้คำสั่ง As Date กำกับตอนท้ายของการกำหนดตัวแปร และไม่มีสัญลักษณ์พิเศษที่ใช้กำหนดชนิดของข้อมูลเช่นเดียวกับ Boolean

3.4.11 ตัวแปรแบบกลุ่มข้อมูลอะเรย์ (Array)

ตัวแปรแบบกลุ่มข้อมูลอะเรย์ เป็นชุดของตัวแปรที่มีชนิดข้อมูลเป็นแบบเดียวกัน โดยมีที่เก็บข้อมูลแยกเป็นหลายๆ ช่อง ในภาษา OpenOffice / LibreOffice Basic จะมีอะเรย์อยู่ 2 ชนิด ได้แก่ อะเรย์แบบ 1 มิติ (Single Array) และอะเรย์แบบหลายมิติ (Multi-Dimention Array)

3.4.11.1 อะเรย์แบบ 1 มิติ

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

ตัวอย่างที่ 3-15 : ตัวอย่างการตั้งตัวแปรอะเรย์ 1 มิติ
       ....
       Dim firstArray(3)
       Dim anyData(4) As Integer
       ....

ตัวแปรอะเรย์ firstArray() ในตัวอย่างข้างต้น ถ้าจะเข้าถึงเนื้อหาในช่องเก็บข้อมูลแต่ละช่องของ fisrtArray() จะทำได้โดยการใช้เลขชี้ช่อง หรือ index ซึ่งจะสามารถแยกได้เป็น

       firstArray(0) หมายถึง อะเรย์ firstArray ช่องที่ 1
       firstArray(1) หมายถึง อะเรย์ firstArray ช่องที่ 2
       firstArray(2) หมายถึง อะเรย์ firstArray ช่องที่ 3
และ  firstArray(3) หมายถึง อะเรย์ firstArray ช่องที่ 4

หมายเหตุ
โดยปรกติเลขชี้ช่องของอะเรย์ (index) ในภาษา OpenOffice / LibreOffice Basic ถ้าไม่ได้กำหนดเป็นอย่างอื่น จะเริ่มต้นจากเลข 0 เสมอ

การตั้งตัวแปรอะเรย์ในตัวอย่างข้างต้น จะเป็นกรณีของการกำหนดช่องของอะเรย์โดยเริ่มต้นจากเลข 0 ในภาษา OpenOffice / LibreOffice Basic สามารถตั้งตัวแปรอะเรย์โดยให้เลขชี้ช่องของอะเรย์เริ่มต้นที่เลขอื่นๆ ได้เช่นเดียวกัน ตัวอย่างเช่น

ตัวอย่างที่ 3-16 : ตัวอย่างการตั้งตัวแปรอะเรย์ 1 มิติกรณีตัวชี้ช่องไม่ได้เริ่มจากเลข 0
        ....
        Dim myData(3 to 5) As String
        Dim testData(-10 to -5) As Integer
        ....

ในตัวอย่างข้างต้น ช่องของตัวแปรอะเรย์ myData() จะประกอบด้วย myData(3), myData(4) และ myData(5) สำหรับเลขชี้ช่องอะเรย์ในภาษา OpenOffice / LibreOffice Basic สามารถเป็นได้ทั้งค่าบวก และค่าลบ โดยมีเงื่อนไขดังนี้
  • ตัวชี้ช่องสำหรับตัวแปรอะเรย์ที่น้อยที่สุดได้แก่ -32768
  • ตัวชี้ช่องสำหรับตัวแปรอะเรย์ที่มากที่สุดได้แก่ 32768
  • ขนาดของอะเรย์สูงสุดไม่เกิน 16368 
 
โดยปรกติเลขชี้ช่องของอะเรย์ หรือ index ในภาษา OpenOffice / LibreOffice Basic จะเริ่มต้นจากเลข 0 แต่ในทางปฏิบัติเราสามารถบังคับให้เลขตัวชี้ช่องของอะเรย์เริ่มต้นที่เลข 1 เหมือน VBA ได้โดยการใส่คำสั่ง Option Base 1 ไว้ที่ช่วงตอนต้นของมอดูล ก่อนเนื้อหาของซับรูทีน หรือฟังก์ชันอื่นๆ ตัวอย่างเช่น
         ....
         Option Base 1
         ....
         Dim myArray(3)
         ....
ในตัวอย่างข้างต้น เมื่อใส่คำสั่ง Option Base 1 ไว้ในตอนต้นของต้นฉบับโปรแกรม ซึ่งจะมีผลทำให้ตัวชี้ช่องของตัวแปรอะเรย์เริ่มต้นที่ 1 ไม่ใช่ที่ 0 ดังนั้นตัวแปรอะเรย์ myArray ในตัวอย่าง จึงประกอบด้วยช่อง myArray(1), myArray(2) และ myArray(3) ตามลำดับ (ไม่ใช่ myArray(0), myArray(1) และ myArray(1) เหมือนกรณีปรกติ)

3.4.11.2 อะเรย์แบบหลายมิติ

ในภาษา OpenOffice / LibreOffice Basic สามารถกำหนดตัวแปรอะเรย์แบบหลายมิติได้เช่นเดียวกับภาษาโปรแกรมอื่นๆ โดยในการกำหนดตัวแปรอะเรย์แบบหลายมิติ จะดำเนินการเหมือนอะเรย์แบบมิติเดียว โดยเพิ่มเลขจำนวนช่องของอะเรย์ในแต่ละมิติลงไป ตัวอย่างเช่น
        ....
        Dim multi_array(5, 5) As Integer
        ....
multi_array ในตัวอย่างข้างต้นเป็นอะเรย์แบบ 2 มิติ ขนาด 6 x 6 ช่องสำหรับเก็บค่าตัวเลขแบบ Integer
ในการใช้อะเรย์แบบหลายมิติจะใช้หน่วยความจำค่อนข้างมาก ดังนั้นจึงขึ้นอยู่กับระบบคอมพิวเตอร์ที่เราใช้งานอยู่ ว่าจะสามารถรองรับอะเรย์แบบหลายมิติได้มากน้อยแค่ไหน

การเปลี่ยนแปลงขนาดของอะเรย์

โดยปรกติอะเรย์ในภาษาโปรแกรมรุ่นแรกๆ จะเป็นกลุ่มข้อมูลที่จะต้องกำหนดขนาดไว้ตายตัว ในระหว่างที่ Run โปรแกรม ตัวแปรอะเรย์ไม่สามารถเปลี่ยนแปลงขนาดได้ แต่สำหรับภาษา OpenOffice / LibreOffice Basic จะแตกต่างออกไป คือ เราสามารถปรับเปลี่ยนขนาดของตัวแปรอะเรย์ในระหว่างการดำเนินโปรแกรมได้ โดยการใช้คำสั่ง REDIM ตัวอย่างเช่น
         ....
         Dim TestingArray(5) As Integer 'กำหนดตัวแปรอะเรย์ 1 มิติจำนวน 5 ช่อง
         ....
         ....
         ReDim TestingArray(10) As Integer 'เปลี่ยนขนาดเป็น 10 ช่อง
         ....
         ....
         ReDim TestingArray(15) As Integer 'เปลี่ยนขนาดเป็น 15 ช่อง
         ....
ในการเปลี่ยนขนาดของอะเรย์ มีข้อควรระวังคือ ทุกครั้งที่มีการเปลี่ยนขนาดของตัวแปรอะเรย์ ข้อมูลที่เก็บอยู่ในช่องต่างๆ ของอะเรย์เดิมจะหายหมด
สำหรับในกรณีที่ต้องการปรับเปลี่ยนขนาดของอะเรย์ และต้องการรักษาข้อมูลในช่องต่างๆ ของเดิมไว้ สามารถทำได้โดยการใช้คำสั่ง Preserve กำกับหลังคำสั่ง ReDim โดยมีเงื่อนไข คือ จะต้องไม่เปลี่ยนชนิดข้อมูลของตัวแปรอะเรย์ที่ใช้คำสั่ง ReDim เป็นชนิดอื่นๆ หมายถึงชนิดข้อมูลของอะเรย์จะต้องเหมือนกับตอนกำหนดไว้ในตอนแรก ตัวอย่างเช่น
         ....
         Dim TestingArray(10) As Integer 'ตั้งตัวแปรอะเรย์จำนวน 10 ช่อง
         ....
         ....
         'เปลี่ยนขนาดเป็น 10 ช่อง โดยรักษาข้อมูลเดิมไว้
         ReDim Preserve TestingArray(20) As Integer
         ....

เทรด forex กับ exness

บันทึกประจำวันที่ 14 มิถุนายน พ.. 2557 (2014)
เวลา
เหตุการณ์
06:00 . ตื่นนอน
06:30 . เผาขยะ
07:15 . กวาดเศษใบไม้รอบบ้าน
08:15 . ติดตั้งสปอทไลท์ 12 โวลต์หน้าบ้าน
08:45 .
0.กินข้าวเช้า ทำบันทึกประจำวันของวันก่อน 1.กับข้าว:แกงเห็ดนางฟ้า
09:15 . งานของกิจกรรมอาชีพ งานอินเตอร์เน็ต (18/2557) : ทำต้นฉบับบทความเรื่องใหม่, ศึกษาการใช้ Zalora partner program, ต้นข้อมูลเกี่ยวกับ Affiliate Program
15:15 .
0.กินข้าว พักผ่อน 1.กับข้าว:แกงเห็ดนางฟ้า, ไข่เจียว
16:15 . งานของกิจกรรมอาชีพ งานอินเตอร์เน็ต (18/2557):ศึกษาการทำงานของ Zorala Affiliate
18:30 .
0.อาบน้ำ กินข้าว พักผ่อน 1.กับข้าว:แกงเห็ดนางฟ้า, ผักรวก, น้ำพริก
20:00 . เข้านอน


Adz2you.