ข้อ 3.2 Initializing Arrays 


Arrays (อาร์เรย์) คือ ชุดข้อมูล โดยชนิดข้อมูลในชุดจะต้องเป็นชนิดเดียวกัน เช่น int , char , float เป็นต้น การเก็บข้อมูลแบบนี้นั้น ทำให้ง่ายในการตั้งชื่อตัวแปรจำนวนมาก เข้าถึงข้อมูลได้เร็ว แต่ถ้าเก็บข้อมูลไม่ครบจะทำให้เสียเนื้อที่หน่วยความจำโดยไม่จำเป็น
ประเภทของ Array มีกี่ชนิด..?
มี3ชนิด ดังนี้
1.ตัวแปรชุด 1 มิติ (one dimension arrays หรือ single dimension arrays) เป็นตัวแปรชุดที่มีตัวเลขแสดงขนาดเป็นเลขตัวเดียว โดยมีรูปแบบดังนี้
ชนิดข้อมูล ชื่อตัวแปร[จำนวนสมาชิก]
เช่น int a[5]; หมายถึง a เป็นอาร์เรย์ที่มี 5 สมาชิก โดยสมาชิกทุกตัวเก็บค่าเป็นจำนวนเต็ม
- ตัวแปรชุดหลายมิติ (multi-dimension arrays) เป็นตัวแปรชุดที่ชื่อมีตัวเลขแสดงขนาดเป็นตัวเลขหลายตัว ที่นิยมใช้กันมี 2 มิติ กับ 3 มิติ
2.1 ตัวแปรชุด 2 มิติ มีเลขแสดงขนาด 2 ตัวโดยตัวแรกจะเป็นตัวเลขที่แสดงตำแหน่งแถว และตัวที่สองจะเป็นตัวเลขแสดงตำแหน่งคอลัมน์ โดยมีรูปแบบดังนี้
ชนิดข้อมูล ชื่อตัวแปร [จำนวนสมาชิกตัวที่ 1] [จำนวนสมาชิกตัวที่ 2];
เช่น int num[3][4]; หมายความว่า num เป็นอาร์เรย์ 2 มิติ ที่มี 3 แถว 4 คอลัมน์ เก็บค่าเป็นจำนวนเต็ม
2.2 ตัวแปรชุด 3 มิติ มีเลขแสดงขนาด 3 ตัว โดยตัวแรกจะเป็นตัวเลขที่แสดงตำแหน่งความลึก ตัวที่สองจะเป็นตัวเลขแสดงตำแหน่งแถว และตัวที่สามจะเป็นตัวเลขแสดงตำแหน่งคอลัมน์ และ โดยมีรูปแบบดังนี้
ชนิดข้อมูล ชื่อตัวแปร [จำนวนสมาชิกตัวที่ 1] [จำนวนสมาชิกตัวที่ 2] [จำนวนสมาชิกตัวที่ 3
Credit: http://kanokwan.sru.ac.th/e-learning/07.php
โดยเราจะทำarrys แบบ 1มิติ โดยมีการใช้คำสั่ง setw(จำนวนช่อง) เช่น cout<<setw(5)<<x;
โดยsetw(5) คือ _ _ _ _ _ ( _ คือ ช่องว่าง) โดยเราจะใส่ค่าxไว้ในช่องสุดท้าย ดังนั้น จะได้outputเป็น _ _ _ _ x
โดยจะเห็นว่า ค่าoutput ของ junk จะได้เป็น –858993460 เนื่องจากเราไม่ได้กำหนดค่าข้อมูลใน junk นั่นเอง
การทำงานของ Flowchart


SOURCE CODE : :
#include<iostream> #include<iomanip>
using std ::cout; using std ::endl; using std ::setw;
int main() { int value[5] = {1, 2, 3,}; int junk[5]; int i; cout << endl; for(int i = 0; i < 5; i++); cout << setw (12) << value[i]; cout <<endl; for(int i = 0; i < 5; i++); cout << setw(12) << junk[i]; cout << endl; return(0); }![]()
การทำงานของ :: SOURCE CODE


#include “stdafx.h” = เป็นการimport คำสั่ง
#include <iostream> = เป็นการimport คำสั่ง
#include <iomanip> = เป็นการimport คำสั่ง
using std::cout;
using std::endl;
using std::setw;
int main()
{
int value[5]={1,2,3}; = เป็นการประกาศค่าarraysชนิด int แบบ 1มิติ โดยกำหนดให้มีค่า 1,2,3
int junk[5]; = เป็นการประกาศค่าarraysชนิด int แบบ 1มิติ โดยไม่มีการกำหนดค่า
cout<<endl; = ขึ้นบรรทัดใหม่
for(int i=0;i<5;i++){ = กำหนดให้เงื่อนไขเป็น i<5 โดยให้ค่าi เรื่มต้นที่ 0 และให้เพิ่มค่า i+1 เมื่อทำการวนลูปเสร็จ
cout<<setw(12)<<value[i]; = กำหนดช่องให้เป็น12 และใส่ค่าvalue[i] ในช่องสุดท้าย
}
cout<<endl; = ขึ้นบรรทัดใหม่
for(int i=0;i<5;i++){
cout<<setw(12)<<junk[i]; = กำหนดช่องให้เป็น12 และใส่ค่าjunk[i] ในช่องสุดท้าย
}
cout<<endl; = ขึ้นบรรทัดใหม่
system (“pause”); = ทำให้โปรแกรมหยุดทำงาน
return 0;
}
จากการทดลอง(OUTPUT)


BY ธนวิชญ์ บุตรโคตร
ได้ความรุ้ดีครับ
👍👍👍👍👍
เยี่ยมมากคับ