This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
tutorial:array [2019/01/04 14:31] admin [Array of Const] |
tutorial:array [2019/01/07 15:14] (current) admin [Arrays] |
||
---|---|---|---|
Line 1: | Line 1: | ||
======Arrays====== | ======Arrays====== | ||
- | Arrays คือ ตัวแปรที่มีลักษณะเป็นโครงสร้างของตัวแปรที่มีชนิดเดียวกันทั้งหมด | + | Arrays คือ ตัวแปรที่มีลักษณะเป็นโครงสร้าง (Structured Type) ชนิดหนึ่ง ที่มีสมาชิกเป็น Data Type ชนิดเดียวกันทั้งหมด |
- | =====Static/Dynamic Arrays===== | + | =====Type of Arrays===== |
- | โดยทั่วไป Array จะสามารถแยกได้เป็น 2 ชนิด คือ Static Array และ Dynamic Array รายละเอียดของแต่ละชนิดสามารถสรุปได้ตามนี้ | + | โดยทั่วไป Array จะสามารถแยกได้เป็น 2 ชนิด คือ Static Array และ Dynamic Array (หรือ เรียกว่า Open Array) รายละเอียดของแต่ละชนิดสามารถสรุปได้ตามนี้ |
^ Array Type ^ การประกาศ (Declaration) ^ | ^ Array Type ^ การประกาศ (Declaration) ^ | ||
Line 33: | Line 33: | ||
=====การกำหนด/เรียกดู ค่าสมาชิกของ Arrays===== | =====การกำหนด/เรียกดู ค่าสมาชิกของ Arrays===== | ||
- | สำหรับ Array ทั่วไป การกำหนดค่าสมาชิกของ Array สามารถทำได้ดังตัวอย่างต่อไปนี้ | + | การกำหนดค่าสมาชิกของ Arrays สามารถทำได้ดังตัวอย่างต่อไปนี้ |
+ | <hidden Defining/Reporting Arrays> | ||
<sxh delphi;> | <sxh delphi;> | ||
Var ArrX:array[1..3] of integer; //Static Array - 1D | Var ArrX:array[1..3] of integer; //Static Array - 1D | ||
Line 72: | Line 73: | ||
end | end | ||
</sxh> | </sxh> | ||
+ | </hidden> | ||
\\ | \\ | ||
- | =====Array As Arguments===== | + | =====Open Array As Parameters===== |
- | การส่งผ่าน Array เป็นตัวแปร สามารถทำได้โดยการประกาศ Array ใน Argument นั้นให้รับค่า Dynamic Array ดังนี้ | + | การส่งผ่าน Array เป็นตัวแปร สามารถทำได้โดยการประกาศ identifier ของ Array ให้เป็น Open Array (Dynamic Array) ใน Argument นั้นๆ |
+ | Procedure ShowItemArray(Arr:array of real); | ||
+ | | ||
+ | นอกจากนี้ เรายังสามารถประกาศ Open Array ล่วงหน้า แล้วนำมาใส่เป็น identifier ได้เช่นกัน ดังนี้ | ||
+ | | ||
Type TArrR:array of real; | Type TArrR:array of real; | ||
| | ||
- | Procedure ShowItemArray(Arr:array of real); | ||
Procedure ShowItemArray(Arr:TArrR); | Procedure ShowItemArray(Arr:TArrR); | ||
- | **หมายเหตุ**-index ของ Array ที่ส่งผ่านเข้ามาใน Procedure/Function จะเริ่มจาก 0 เสมอตามรูปแบบของ Dynamic Array | + | **หมายเหตุ** - index ของ Array ที่ถูกส่งผ่านเข้ามาใน Procedure/Function แล้วนั้น จะเริ่มจาก 0 เสมอ |
\\ | \\ | ||
=====Array of Const===== | =====Array of Const===== | ||
- | หากเราต้องการส่งค่า Array เป็นตัวแปร โดยที่ Array ดังกล่าวเป็นค่าคงที่ซึ่งไม่ได้มีการประกาศ identifier ชัดเจน (ไม่มีการประกาศ array of ...) เช่น [1,2,3,4] หรือ ['A','B','C'] หรือ [true,false,false] เป็นต้น เราสามารถกำหนดให้ตัวแปรดังกล่าว เป็น Array of Const ได้ ดังตัวอย่างต่อไปนี้ | + | หากเราต้องการส่งค่า Array เป็นตัวแปร โดยที่ Array ดังกล่าวเป็นค่าคงที่ซึ่งไม่ได้มีการประกาศ identifier ชัดเจน (ไม่มีการประกาศ array of ...) เช่น [1,2,3,4] หรือ ['A','B','C'] หรือ [true,false,false] เป็นต้น เราเรียก identifier ของ Array ดังกล่าวว่าเป็น Array of Const ดังตัวอย่างต่อไปนี้ |
<sxh delphi;> | <sxh delphi;> | ||
Line 93: | Line 98: | ||
writeln('Number of member in Array = ',length(Arr)); | writeln('Number of member in Array = ',length(Arr)); | ||
end; | end; | ||
- | |||
begin | begin | ||
Line 134: | Line 138: | ||
</sxh> | | </sxh> | | ||
\\ | \\ | ||
+ | |||
+ | =====References===== | ||
+ | http://wiki.freepascal.org/Array \\ | ||
+ | https://www.freepascal.org/docs-html/ref/refsu68.html\\ | ||
+ | https://www.freepascal.org/docs-html/ref/refsu69.html | ||