บทที่ 2 ประเภทข้อมูล (DATA TYPE)

23
2-1 บบบบบ 2 บบบบบบบบบบบบ (DATA TYPE) OUTLINE 1. บบบบบบบบบบบบ 2. บบบบบบบบบบบบบบบบบบ

Transcript of บทที่ 2 ประเภทข้อมูล (DATA TYPE)

Page 1: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-1

บทท่ี2 ประเภทขอ้มูล (DATA TYPE)

OUTLINE1. ประเภทขอ้มูล2. การกำาหนดค่าขอ้มูล

Page 2: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-2

บทที่2 ประเภทขอ้มูล (DATA TYPE)

•ประเภทขอ้มูลในภาษาปาสคาล 1. ขอ้มูลพื้นฐาน (Simple types)

2. ขอ้มูล แบบสตรงิ (String types)3. ขอ้มูลแบบโครงสรา้ง (Structure types)

4. ขอ้มูลแบบพอยน์เตอร์ (pointer types)5. ขอ้มูลแบบออฟเจก็ด์ (object type)

Page 3: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-3

ขอ้มูลพื้นฐาน (Simple types)

• ขอ้มูลพื้นฐาน (Simple types) – มท้ัีงแบบมลีำาดับ และ ไมม่ลีำาดับ– เป็นชว่งขอ้มูลท่ีมลีำาดับ (Order) แน่นอน

สามารถบอกค่าลำาดับได้อยา่งแน่ชดั– สามารถเปรยีบเทียบค่า มากกวา่ น้อยกวา่ หรอื

เท่ากันได้– เชน่ ค่า 20 มากวา่ 19 หรอื ตัวอักษร Y

อยูห่ลัง X

Page 4: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-4

ขอ้มูลพื้นฐาน (Simple types)

• ฟงัก์ชนั ที่ใชกั้บขอ้มูลแบบลำาดับ–ord( ) ยอ่มาจาก Order ใชห้าลำาดับท่ีของค่านัน้–pred( ) ยอ่มาจาก predecessor ใชห้าลำาดับ

ก่อนค่าท่ีระบุ–succ( ) ยอ่มาจาก successor ใชห้าลำาดับหลัง

ค่าท่ีระบุ• ฟงัก์ชนัเหล่านี้เป็น Predefined function สิง่

ท่ีอยูใ่นวงเล็บอาจเป็นตัวเลข ตัวแปร หรอื นิพจน์

Page 5: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-5

ขอ้มูลแบบลำาดับ

•ขอ้มูลแบบลำาดับแบง่ได้ดังนี้–แบบเลขจำานวนเต็ม–แบบเลขจำานวนจรงิ–แบบตัวอักษร–แบบบูลีน

Page 6: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-6

แบบเลขจำานวนเต็ม

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

Page 7: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-7

แบบเลขจำานวนเต็ม

ชื่อแบบขอ้มูล ชว่งขอ้มูล ขนาด(ไบต์)

shorint -128..127 1integer -32768..32767 2longint -2147483648..2147483647

4byte 0..255 1word 0..65535 2

Page 8: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-8

แบบเลขจำานวนเต็ม

• ตัวดำาเนินการท่ีใชกั้บเลขจำานวนเต็ม– +, - , * , / , DIV, MOD

•การประกาศตัวแปรของเลขจำานวนเต็มVAR time, rate :integer; distance : word;

Page 9: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-9

แบบเลขจำานวนจรงิ

•แบบเลขจำานวนจรงิ เป็นขอ้มูลท่ีไมม่ลีำาดับ เพราะไมส่ามารถหาลำาดับ

จากจุดทศนิยมได้ อาจเขยีนได้ดังนี้– เลขทศนิยม เชน่2459. , 7 0 ,– เลขทศนิยมแบบยกกำาลัง เชน่2004. E+5, 3.4567E-10

Page 10: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

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

Page 11: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-11

แบบเลขจำานวนจรงิ

• ตัวดำาเนินการท่ีใชกั้บเลขจำานวนเต็ม– +, - , * , / , – การหารท่ีใช้ / ผลลัพธท่ี์ได้เป็นเลขจำานวน

จรงิเสอม•การประกาศตัวแปรของเลขจำานวนเต็ม

VAR tax, rate : real; average : real;

Page 12: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-12

แบบตัวอักษร

• แบบตัวอักษรในปาสคาล มี– อักษรตัวเดียว (char)– ตัวอักษรประกอบเป็นขอ้ความ (string)

• อักขระในคอมพวิเตอรถ์กูแทนด้วยรหัสBCD, EBCDIC หรอื ASCII

• เครื่องไมโครคอมพวิเตอรใ์ช้ รหัส ASCII ใช้ 1 ไบต์ ต่อ1อักขระ

Page 13: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-13

แบบตัวอักษร

• รหสั ASCII มี อยู่ 128 ตัว มค่ีา มาตราฐานทางตัวเลข - 0127 (ดู

ตาราง)• สว่นตัวเลข - 128255 ใชก้ับ

ตัวอักษรท่ีนอกเหนือจากมาตราฐาน เชน่ สญัลักษณ์ทางคณิตศาสตร์ ภาษาไทย

Page 14: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-14

แบบตัวอักษร

• รหสั - 0127 เป็นตัวอักษรแบง่ได้ 2 แบบ1. printing character สามารถพมิพ์ และมองเหน็

ทางจอภาพ•letter คือตัว A-Z•digit ตัวเลข -09•special character

2. Nonprinting character ไมส่ามารถมองเหน็ ทางจอภาพ เป็นตัวอักษรควบคมุ(Control

character) เชน่เสยีง end of file

Page 15: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-15

แบบตัวอักษร

• การอ้างถึง Nonprinting character ในโปรแกรม

Ctrl-G #7 #$07 ^GEsc #27#$1B ^[Blank #32#$20 ‘ ‘

ตัวเลข 0 #48#$30 ‘0’ ตัวอักษร B #66 #$42 ‘B’

• สว่นที่มี $ นำาหน้าเป็นเลขฐาน16

Page 16: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-16

แบบตัวอักษร

•การประกาศตัวแปรแบบตัวอักษรVAR grade : char; grade,size : char;

•ฟงัก์ชนัท่ีใชกั้บตัวอักษร–chr(n ) เปล่ียนตัวเลขจำานวนเต็มเป็นตัวอักษร–u pcase(c) เปล่ียนตัวอักษรตัวเล็กเป็นตัว

พมิพ์

Page 17: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-17

แบบบูลีน

•แบบบูลีนขอ้มูลท่ีใชใ้นการตัดสนิใจแบบตรรกะ(logic) มค่ีา 2 ค่าคือ false มี

ลำาดับเป็น 0 และ true มลีำาดับเป็น 1 ใชเ้น้ือท่ี 1 ไบต์

•การประกาศตัวแปรแบบบูลีนVAR flag : boolean;

Page 18: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-18

ขอ้มูลแบบสตรงิ

•ขอ้มูลแบบสตรงิ– คือขอ้มูลแบบขอ้ความ มคีวามยาว

- 0255 ตัวอักษร ความยาว 0 คือ ชอ่งวา่ง ‘ ‘ หรอื Null string

– อาจมองเป็นอารเ์รยข์องตัวอักษรเพราะนำาเอาตัวอักษรมาเรยีงกัน

Page 19: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-19

ขอ้มูลแบบสตรงิ

•การประกาศตัวแปรขอ้มูลแบบสตรงิVAR

Address : string; เก็บตัวอักษร - 0255 ตัว name : string[10]; เก็บตัวอัก ษร - 010 ตัว

•การใหค่้ากับสตรงิname := ‘ Ann Lee’ 7 A n n L e e

• ไบต์แรกเก็บจำานวนตัวอักษรในสตรงิ

Page 20: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-20

ขอ้มูลแบบโครงสรา้ง

• แบบอารเ์รย์ (Array types)•แบบเซต (Set types)• แบบเรคอรด์ (Record types)• แบบไฟล์ (File types)

Page 21: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-21

ขอ้มูลแบบพอยน์เตอร์

•ขอ้มูลแบบพอยน์เตอร์ เป็นขอ้มูลแบบไดนามกิ มกีาร

จองเน้ือท่ี หรอืสรา้งตัวแปรขณะ ปฏิบติัการ (Execute)

Page 22: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-22

ขอ้มูลแบบออฟเจก็ต์

•ขอ้มูลแบบพอยน์เตอร์ เป็นขอ้มูลท่ีเขยีนในลักษณะของ

Object

Page 23: บทที่ 2 ประเภทข้อมูล (DATA TYPE)

2-23

การกำาหนดค่า

• การกำาหนดค่าคงท่ีCONST

star = ‘*’; flag = true; max = 600;

• การกำาหนดค่าตัวแปร

• Assignment statement

5NUM := ; := ‘’; 11:=+ 1;