บทที่ 2 ประเภทข้อมูล (DATA TYPE)
Transcript of บทที่ 2 ประเภทข้อมูล (DATA TYPE)
2-1
บทท่ี2 ประเภทขอ้มูล (DATA TYPE)
OUTLINE1. ประเภทขอ้มูล2. การกำาหนดค่าขอ้มูล
2-2
บทที่2 ประเภทขอ้มูล (DATA TYPE)
•ประเภทขอ้มูลในภาษาปาสคาล 1. ขอ้มูลพื้นฐาน (Simple types)
2. ขอ้มูล แบบสตรงิ (String types)3. ขอ้มูลแบบโครงสรา้ง (Structure types)
4. ขอ้มูลแบบพอยน์เตอร์ (pointer types)5. ขอ้มูลแบบออฟเจก็ด์ (object type)
2-3
ขอ้มูลพื้นฐาน (Simple types)
• ขอ้มูลพื้นฐาน (Simple types) – มท้ัีงแบบมลีำาดับ และ ไมม่ลีำาดับ– เป็นชว่งขอ้มูลท่ีมลีำาดับ (Order) แน่นอน
สามารถบอกค่าลำาดับได้อยา่งแน่ชดั– สามารถเปรยีบเทียบค่า มากกวา่ น้อยกวา่ หรอื
เท่ากันได้– เชน่ ค่า 20 มากวา่ 19 หรอื ตัวอักษร Y
อยูห่ลัง X
2-4
ขอ้มูลพื้นฐาน (Simple types)
• ฟงัก์ชนั ที่ใชกั้บขอ้มูลแบบลำาดับ–ord( ) ยอ่มาจาก Order ใชห้าลำาดับท่ีของค่านัน้–pred( ) ยอ่มาจาก predecessor ใชห้าลำาดับ
ก่อนค่าท่ีระบุ–succ( ) ยอ่มาจาก successor ใชห้าลำาดับหลัง
ค่าท่ีระบุ• ฟงัก์ชนัเหล่านี้เป็น Predefined function สิง่
ท่ีอยูใ่นวงเล็บอาจเป็นตัวเลข ตัวแปร หรอื นิพจน์
2-5
ขอ้มูลแบบลำาดับ
•ขอ้มูลแบบลำาดับแบง่ได้ดังนี้–แบบเลขจำานวนเต็ม–แบบเลขจำานวนจรงิ–แบบตัวอักษร–แบบบูลีน
2-6
แบบเลขจำานวนเต็ม
• เป็นเลขจำานวนเต็มไมม่จุีดทศนิยม• มค่ีาได้ทัง้ ลบ และ บวก• ไมม่เีครื่องหมาย , และ ชอ่งวา่ง
2-7
แบบเลขจำานวนเต็ม
ชื่อแบบขอ้มูล ชว่งขอ้มูล ขนาด(ไบต์)
shorint -128..127 1integer -32768..32767 2longint -2147483648..2147483647
4byte 0..255 1word 0..65535 2
2-8
แบบเลขจำานวนเต็ม
• ตัวดำาเนินการท่ีใชกั้บเลขจำานวนเต็ม– +, - , * , / , DIV, MOD
•การประกาศตัวแปรของเลขจำานวนเต็มVAR time, rate :integer; distance : word;
2-9
แบบเลขจำานวนจรงิ
•แบบเลขจำานวนจรงิ เป็นขอ้มูลท่ีไมม่ลีำาดับ เพราะไมส่ามารถหาลำาดับ
จากจุดทศนิยมได้ อาจเขยีนได้ดังนี้– เลขทศนิยม เชน่2459. , 7 0 ,– เลขทศนิยมแบบยกกำาลัง เชน่2004. E+5, 3.4567E-10
2-10
แบบเลขจำานวนจรงิ
ชื่อแบบขอ้มูล ชว่งขอ้มูล จำานวนหลัก ขนาด(ไบต์)real 2.9x10-39 ..1.7x1038 11-12 6single 1.5x10-45..3.4x1038 7-8 4double 5.0x10-324..1.7x10308 5-16 8extended 3.4x10-4932..1.1x104932 19-20
10comp -9.2x1018..9.2x1018 19-20
8
2-11
แบบเลขจำานวนจรงิ
• ตัวดำาเนินการท่ีใชกั้บเลขจำานวนเต็ม– +, - , * , / , – การหารท่ีใช้ / ผลลัพธท่ี์ได้เป็นเลขจำานวน
จรงิเสอม•การประกาศตัวแปรของเลขจำานวนเต็ม
VAR tax, rate : real; average : real;
2-12
แบบตัวอักษร
• แบบตัวอักษรในปาสคาล มี– อักษรตัวเดียว (char)– ตัวอักษรประกอบเป็นขอ้ความ (string)
• อักขระในคอมพวิเตอรถ์กูแทนด้วยรหัสBCD, EBCDIC หรอื ASCII
• เครื่องไมโครคอมพวิเตอรใ์ช้ รหัส ASCII ใช้ 1 ไบต์ ต่อ1อักขระ
2-13
แบบตัวอักษร
• รหสั ASCII มี อยู่ 128 ตัว มค่ีา มาตราฐานทางตัวเลข - 0127 (ดู
ตาราง)• สว่นตัวเลข - 128255 ใชก้ับ
ตัวอักษรท่ีนอกเหนือจากมาตราฐาน เชน่ สญัลักษณ์ทางคณิตศาสตร์ ภาษาไทย
2-14
แบบตัวอักษร
• รหสั - 0127 เป็นตัวอักษรแบง่ได้ 2 แบบ1. printing character สามารถพมิพ์ และมองเหน็
ทางจอภาพ•letter คือตัว A-Z•digit ตัวเลข -09•special character
2. Nonprinting character ไมส่ามารถมองเหน็ ทางจอภาพ เป็นตัวอักษรควบคมุ(Control
character) เชน่เสยีง end of file
2-15
แบบตัวอักษร
• การอ้างถึง Nonprinting character ในโปรแกรม
Ctrl-G #7 #$07 ^GEsc #27#$1B ^[Blank #32#$20 ‘ ‘
ตัวเลข 0 #48#$30 ‘0’ ตัวอักษร B #66 #$42 ‘B’
• สว่นที่มี $ นำาหน้าเป็นเลขฐาน16
2-16
แบบตัวอักษร
•การประกาศตัวแปรแบบตัวอักษรVAR grade : char; grade,size : char;
•ฟงัก์ชนัท่ีใชกั้บตัวอักษร–chr(n ) เปล่ียนตัวเลขจำานวนเต็มเป็นตัวอักษร–u pcase(c) เปล่ียนตัวอักษรตัวเล็กเป็นตัว
พมิพ์
2-17
แบบบูลีน
•แบบบูลีนขอ้มูลท่ีใชใ้นการตัดสนิใจแบบตรรกะ(logic) มค่ีา 2 ค่าคือ false มี
ลำาดับเป็น 0 และ true มลีำาดับเป็น 1 ใชเ้น้ือท่ี 1 ไบต์
•การประกาศตัวแปรแบบบูลีนVAR flag : boolean;
2-18
ขอ้มูลแบบสตรงิ
•ขอ้มูลแบบสตรงิ– คือขอ้มูลแบบขอ้ความ มคีวามยาว
- 0255 ตัวอักษร ความยาว 0 คือ ชอ่งวา่ง ‘ ‘ หรอื Null string
– อาจมองเป็นอารเ์รยข์องตัวอักษรเพราะนำาเอาตัวอักษรมาเรยีงกัน
2-19
ขอ้มูลแบบสตรงิ
•การประกาศตัวแปรขอ้มูลแบบสตรงิVAR
Address : string; เก็บตัวอักษร - 0255 ตัว name : string[10]; เก็บตัวอัก ษร - 010 ตัว
•การใหค่้ากับสตรงิname := ‘ Ann Lee’ 7 A n n L e e
• ไบต์แรกเก็บจำานวนตัวอักษรในสตรงิ
2-20
ขอ้มูลแบบโครงสรา้ง
• แบบอารเ์รย์ (Array types)•แบบเซต (Set types)• แบบเรคอรด์ (Record types)• แบบไฟล์ (File types)
2-21
ขอ้มูลแบบพอยน์เตอร์
•ขอ้มูลแบบพอยน์เตอร์ เป็นขอ้มูลแบบไดนามกิ มกีาร
จองเน้ือท่ี หรอืสรา้งตัวแปรขณะ ปฏิบติัการ (Execute)
2-22
ขอ้มูลแบบออฟเจก็ต์
•ขอ้มูลแบบพอยน์เตอร์ เป็นขอ้มูลท่ีเขยีนในลักษณะของ
Object
2-23
การกำาหนดค่า
• การกำาหนดค่าคงท่ีCONST
star = ‘*’; flag = true; max = 600;
• การกำาหนดค่าตัวแปร
• Assignment statement
5NUM := ; := ‘’; 11:=+ 1;