งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

3-1 บทที่ 3 ตัวดำเนินการ และ นิพจน์  OUTLINE 1. ตัวดำเนินการ (Operator) 2. นิพจน์ (Expression) 3. คำสั่งเชิงเดียว และ คำสั่งเชิงกลุ่ม.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "3-1 บทที่ 3 ตัวดำเนินการ และ นิพจน์  OUTLINE 1. ตัวดำเนินการ (Operator) 2. นิพจน์ (Expression) 3. คำสั่งเชิงเดียว และ คำสั่งเชิงกลุ่ม."— ใบสำเนางานนำเสนอ:

1 3-1 บทที่ 3 ตัวดำเนินการ และ นิพจน์  OUTLINE 1. ตัวดำเนินการ (Operator) 2. นิพจน์ (Expression) 3. คำสั่งเชิงเดียว และ คำสั่งเชิงกลุ่ม

2 3-2 ตัวดำเนินการ (Operator)  ตัวดำเนินการ (Operator) เทียบได้กับคำสั่งให้ดำเนินกรรมวิธี กับข้อมูล ทางคณิตศาสตร์ บูลีน การ เปรียบเทียบ และ อื่นๆ

3 3-3 ตัวดำเนินการ (Operator)  ตัวดำเนินการ (Operator) ในปาสคาล แบ่งออกเป็น  ตัวดำเนินการทางคณิตศาสตร์ (arithmetic operator)  มี +, -, *, /, div, mod  ตัวดำเนินการระดับบิต (bitwise operators/ logical operator)  ตัวดำเนินการเปรียบเทียบ (relational operators)

4 3-4 ตัวดำเนินการ (Operator)  ตัวดำเนินการบูลีน (boolean operator)  ตัวดำเนินการแอดเดรส (address operator)  ตัวดำเนินการเซต (set operator)  ตัวดำเนินการสตริง (string operator)

5 3-5 ตัวดำเนินการระดับบิต  ตัวดำเนินการระดับบิต (bitwise operators)  ต้องเป็นเลขจำนวนเต็มเท่านั้น  shl(shift left) เลื่อนข้อมุลทุกบิตไป ทางซ้าย โดยจำนวนครั้งอยู่ทางขวาของ ตัวดำเนินการ เช่น 2 shl 1 จะได้ค่า 4 2 shl 2 จะได้ค่า 8

6 3-6 ตัวดำเนินการระดับบิต  ถ้าข้อมูลเป็น byte จะใช้เนื้อที่ 1 ไบต์ มี 8 บิต และมี ค่าเป็น 2 แล้วการ shl ทำ ได้ดังนี้ 1. ข้อมูลมีค่า มีค่า 2 2. ถ้าใช้ 2 shl หลัง เลื่อนมีค่าเป็น 4 3. ถ้าใช้ 15 shl หลังเลื่อนมีค่าเป็น 60

7 3-7 ตัวดำเนินการระดับบิต  Shl ถ้าเลื่อนไปทางซ้าย จะเหมือนกับ เอาข้อมูล คูณด้วย สองยกกำลังจำนวน ครั้งที่เลื่อน เช่น 15 shl 2 จะเท่ากับ 15 * 2 2 = 60  shr(shift right) เลื่อนข้อมูลทุกบิตไป ทางขวา  Shl ถ้าเลื่อนไปทางขวา จะเหมือนกับ เอาข้อมูล หารด้วย สองยกกำลังจำนวน ครั้งที่เลื่อน เช่น 15 shr 2 จะเท่ากับ 15 / 2 2 = 3 ได้ผลหารไม่มีเศษ

8 3-8 ตัวดำเนินการระดับบิตแบบตรรกะ  AND ระดับบิต ทำกับเลขจำนวนเต็ม 2 จำนวน จะ and เฉพาะบิตที่ตรงกัน เท่านั้น เช่น 15 and 9 ค่า ค่า and

9 3-9 ตัวดำเนินการระดับบิตแบบตรรกะ  OR ระดับบิต ทำกับเลขจำนวนเต็ม 2 จำนวน จะ OR ในบิตที่ตรงกัน เช่น 15 OR 9 ค่า ค่า OR

10 3-10 ตัวดำเนินการระดับบิตแบบตรรกะ  XOR (Exclusive or) ระดับบิต ทำกับ เลขจำนวนเต็ม ลักษณะการทำงานคือ  ถ้าบิตตรงกันมีค่าต่างกันผลลัพธ์เป็น 1  ถ้าบิตตรงกันมีค่าเหมือนกันผลลัพธ์ เป็น 0 ค่า ค่า XOR

11 3-11 ตัวดำเนินการระดับบิตแบบตรรกะ  Not ระดับบิต เป็นตัวดำเนินการที่มีค่า อยู่หลัง not ซึ่งจะทำการกลับบิต เช่น not 17 ค่า not มีค่า -18

12 3-12 โปรแกรมการใช้ Operator PROGRAM operator1; USES Wincrt; begin writeln('+: ',25+50); writeln('/: ',25/50:5:2); writeln('MOD: ',50 mod 3); writeln('DIV: ',50 div 3); 

13 3-13 โปรแกรมการใช้ Operator writeln('shl: ',1 shl 1:5, 2 shl 2:5, 2 shl 3:5); writeln('shr: ',15 shr 1:5, 15 shr 2:5, 15 shr 3:5); writeln('and: ',25 and 50); writeln('OR: ', 25 or 50); writeln('XOR: ',25 XOR 50); writeln('not: ', not 25); end.

14 3-14 ตัวดำเนินการเปรียบเทียบ  ตัวดำเนินการเปรียบเทียบ มีค่าที่ต้องการเปรียบเทียบอยู่ระหว่าง ตัวดำเนินการ ผลลัพธ์เป็นบูลีน คือ false, true  >, =,, in  ‘E’ in [‘a’,’e’,’i’,’o’,’u’]  2 < 3

15 3-15 ตัวดำเนินการบูลีน  ตัวดำเนินการบูลีน มี 4 ตัว and, or, xor, not มีการทำงานเหมือนระดับบิต ต่างตรงที่ สองข้างของตัวดำเนินการ เป็นบูลีน เช่น (a>13) and (b < 5) ผลลัพธ์มี จริงกับเท็จ

16 3-16 ตัวดำเนินการบูลีน A มีค่า B มีค่า A and B A or B A xor B not A T T T T F F T F F T T F F T F T T T F F F F F T

17 3-17 ตัวดำเนินการแอดเดรส  ตัวดำเนินการแอดเดรส มี 2 และ ^ ใช้บอกตำแหน่งในหน่วยความจำ ของตัวแปร เช่น ตัวแปร sum จะได้ที่อยู่ในหน่วยความจำของ sum

18 3-18 ตัวดำเนินการเซต และ สตริง  ตัวดำเนินการเซต มี  + union  - intersection  * difference  ตัวดำเนินการสตริง มี ตัวเดียว คือ concatenate + เป็นการเชื่อมตัวอักษร เข้าด้วยกัน เช่น ‘a’ +’bc’ ได้ abc

19 3-19 ลำดับการทำงานของตัวดำเนินการ not 2. *, /, div, mod, and, shl, shr 3. +, -, or, xor 4. =, <>,, =, IN ถ้ามีฟังก์ชัน หรือ วงเล็บให้ทำก่อน

20 3-20 นิพจน์คณิตศาสตร์  นิพจน์ อาจเป็น ตัวแปร ค่าคงที่ หรือ ฟังก์ชัน  นิพจน์ทางคณิตศาสตร์ คือ นิพจน์ที่ใช้ ตัวดำเนินการทางคณิตศาสตร์ +, -, *, /, div, mod โดยข้อมูลต้องเป็นตัวเลข  หากมีการผสมระหว่างเลขจำนวนเต็ม และ จำนวนจริง เลขจำนวนเต็มจะถูก เปลี่ยนเป็นจำนวนจริงโดยอัตโนมัต  หากต้องการเก็บค่าของเลขจำนวนจริง ไว้ในเลขจำนวนเต็มต้องใช้ ฟังก์ชัน trunc(R) round( R) ก่อน

21 3-21 การสร้างนิพจน์ทางคณิตศาสตร์  5(num+total ) ===> 5 * (num + total)  (x 2 +y 2 ) 2 ====> SQR(x*x + y*y) หรือ SQR(SQR(x)+SQR (y))  -b+ b 2 - 4ac ===> (- b+SQRT(SQR(b)-4*a*c))/ (2*a) 2a

22 3-22 ตัวอย่างนิพจน์ทางคณิตศาสตร์ PROGRAM expression1; USES Wincrt; VAR a,b,tem1,tem2 :integer; c,d,tem3 : real; BEGIN clrscr; a:= 27; b:=4; c:= 56.2; d:= 7.0; 

23 3-23 ตัวอย่างนิพจน์ทางคณิตศาสตร์ Writeln ('int,int: ', A+B:15, a-b:15, a*b:15, a/b:25); Writeln('int,rel: ',a+c:18, a-c:18, a*c:18, a/c:18); Writeln('rel,int: ',d+b:18,d- b:18,d*b:18,d/c:18); Writeln('rel,rel: ',c+d:18,c- d:18,c*d:18,c/d:18); tem1 := a div b; tem2 := a mod b; tem3 := a div b; Writeln (tem1:20,tem2:20,tem3:20) End.

24 3-24 นิพจน์แบบบูลีน  นิพจน์แบบบูลีน มีค่า จริงกับเท็จเท่านั้น เพราะฉะนั้นต้อง ประกาศตัวแปลงแบบ บูลีน  ตัวอย่าง : VAR count,total :integer; length,height : real; done : boolean:  Count < total  (count=total) and(length>height ) and done  (count mod total =0) or(count <= 100)

25 3-25 นิพจน์แบบบูลีน PROGRAM operator1; USES Wincrt; VAR a, b : real; flag : boolean; begin write('Enter a:'); Readln (a); write('Enter b:'); Readln (b); flag := a < b; Writeln(flag); end.

26 3-26 คำสั่งเชิงเดียว และ คำสั่งเชิงกลุ่ม  คำสั่งเชิงเดียว คือ ประโยคคำสั่ง 1 คำสั่ง  คำสั่งเชิงกลุ่ม (compound statement) เมื่อต้องการให้มีคำสั่งหลายประโยคหรือ เป็นกลุ่มคำสั่งให้จัดอยู่ในคอมเปานด์ มี รูปแบบดังนี้ begin statement 1; : statement N end

27 3-27

28 3-28


ดาวน์โหลด ppt 3-1 บทที่ 3 ตัวดำเนินการ และ นิพจน์  OUTLINE 1. ตัวดำเนินการ (Operator) 2. นิพจน์ (Expression) 3. คำสั่งเชิงเดียว และ คำสั่งเชิงกลุ่ม.

งานนำเสนอที่คล้ายกัน


Ads by Google