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

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

Operator & Expression รายวิชา ง 40102 หลักการแก้ปัญหา และการโปรแกรม.

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


งานนำเสนอเรื่อง: "Operator & Expression รายวิชา ง 40102 หลักการแก้ปัญหา และการโปรแกรม."— ใบสำเนางานนำเสนอ:

1 Operator & Expression รายวิชา ง หลักการแก้ปัญหา และการโปรแกรม

2 นิพจน์  นิพจน์ (expression) คือ การดำเนินการที่ ประกอบด้วยตัวดำเนินการ (operator) และ ตัวถูกดำเนินการ (operand)  ตัวดำเนินการ (operator) คือ สัญลักษณ์ ที่ใช้ในการแทนการกระทำอย่างใดอย่าง หนึ่งกับข้อมูล เช่น + - * / % = > <  ตัวถูกดำเนินการ (operand) คือ ข้อมูลที่ ถูกกระทำโดยตัวดำเนินการ ซึ่งตัวถูก ดำเนินการอาจอยู่ในรูปของ ตัวแปร (variable), ค่าคงที่ (constant), ค่าที่ ได้รับจากฟังก์ชัน (return function) หรือ แม้กระทั่งนิพจน์ (expression) เองก็เป็น ตัวถูกดำเนินการได้ เช่น a+b, x++, a != b, x = (a + b) / 2

3 operand #1 (constant) 5 * ( a * b - 3 ) operand #2 (Expressio n) operat or (*) ( a * b - 3 ) operat or oper and

4 ตัวดำเนินการชนิดต่างๆ ที่ใช้ บ่อย + / * / %  ใช้เพื่อกระทำการทางคณิตศาสตร์กับข้อมูลที่ เป็นตัวเลข  +, -, *, / แทนการ บวก, ลบ, คูณ, หาร ตามลำดับ  % แทนการหารเอาเศษ (modulo, mod)  ใช้กับข้อมูลชนิดจำนวนเต็มทั้งตัวตั้งและ ตัวหาร  ผลลัพธ์คือ เศษของการหาร  0 % 3 => หารได้ 0 ครั้ง เหลือเศษ 0  1 % 3 => หารได้ 0 ครั้ง เหลือเศษ 1  2 % 3 => หารได้ 0 ครั้ง เหลือเศษ 2  3 % 3 => หารได้ 1 ครั้ง เหลือเศษ 0  4 % 3 => หารได้ 1 ครั้ง เหลือเศษ 1  ผลลัพธ์จะมีค่าตั้งแต่ 0 ถึง ตัวที่นำมาหาร - 1

5 Implicit type conversion  สำหรับภาษาซี operand ที่จะนำมาดำเนินการ กันผ่าน operator ใดๆ ต้องเป็นข้อมูลชนิด เดียวกัน  และผลลัพธ์ที่ได้ เป็นข้อมูลชนิดเดียวกันด้วย  เช่น ถ้าจะหาผลลัพธ์ของ a / b, a และ b ต้อง เป็นข้อมูลชนิดเดียวกันจึงจะนำมาหารกันได้  ถ้า a และ b เป็นข้อมูลชนิด int ผลลัพธ์ที่ได้ก็ จะเป็น int ด้วย  ถ้า a และ b ไม่ใช่ข้อมูลชนิดเดียวกัน ภาษาซี จะแปลงให้เป็นข้อมูลชนิดเดียวกันก่อนคำนวณ โดยอัตโนมัติ

6 Implicit type conversion  แปลงจากชนิดข้อมูลที่ใช้เนื้อที่ในการจัดเก็บ ลงหน่วยความจำน้อยกว่าไปเป็นชนิดข้อมูลที่ ใช้เนื้อที่ในการจัดเก็บลงหน่วยความจำ มากกว่า  แปลงจากข้อมูลที่เป็นเลขจำนวนเต็มไปเป็น ข้อมูลชนิดเลขจำนวนจริง  ลำดับการแปลง char, short, int, long, float, double  ถ้าในโปรแกรมข้อมูลที่นำมาคำนวณเป็น ตัวเลข  เลข 5 => ข้อมูลชนิดจำนวนเต็ม  เลข 5.0 => ข้อมูลชนิดจำนวนจริง

7 Implicit type conversion: ตัวอย่าง intfloatdoubleintdoublefloat double กำหนดให้ char ch ; int i ; float f ; double d ; double result = ( ch / i ) + ( f * d ) - ( f + i ) ;

8 จากสูตร C = ( 5 / 9 ) * ( F – 32 ) ในภาษาซีต้องเขียนว่า float degC, degF ; … degC = ( 5.0 / 9.0 ) * ( degF – 32 ) ; float intfloat

9 ลำดับความสำคัญของตัวดำเนินการ (operator)  ตัวดำเนินการแต่ละตัวในภาษาซีต่างก็มีลำดับ ความสำคัญแตกต่างกันเหมือนกับตัวดำเนินการทาง คณิตศาสตร์ เช่น a + b * c – d / e ( a + ( b * c ) ) – ( d / e ) 5.0 / 9.0 * F – 32 ( ( 5.0 / 9.0 ) * F ) - 32 ลำดับ Operators การกระทำ 1( ) ซ้ายไปขวา 2* / % ซ้ายไปขวา 3+ - ซ้ายไปขวา

10 = += -= *= /= %= = คือนำผลลัพธ์ทางขวามือมาใส่ในตัว แปรทางซ้ายมือ ( ทำจากขวาไปซ้าย ) เช่น a = / 4 ; +=, -=, *=, /=, %= ทำหน้าที่ คล้ายกัน เป็นการลดรูป Count += 2 ; ลดรูปจาก Count = Count + 2 ; Score – = 2.53 ; ลดรูปจาก Score = Score – 2.53 ; Stock *= value ; ลดรูปจาก Stock = Stock * value ; Divisor /= 10.0 ; ลดรูปจาก Divisor = Divisor / 10.0 ; remind %= 10 ; ลดรูปจาก remind = remind % 10 ;

11 ++ --  ++ ใช้แทนคำสั่ง a += 1  -- ใช้แทนคำสั่ง a -= 1  สามารถวาง ++, -- ไว้ก่อนหรือหลังตัวแปรก็ได้  ถ้าวางไว้หลัง ( เช่น a++, a--) หมายถึง นำ a ไปใช้งานก่อน แล้วจึงทำ a += 1 หรือ a -= 1  ถ้าวางไว้ก่อน ( เช่น ++a, --a) หมายถึง ทำ a += 1 หรือ a -= 1 ก่อนแล้วจึง นำ a ไปใช้งาน

12  a++ หมายถึง นำค่าที่อยู่ในตัวแปร a ไปใช้ งานก่อน แล้วจึงทำการเพิ่มค่าของ a ขึ้นมา อีก 1 i = 3 ; b = i++; i = 3 ; b = i ; i = i + 1 ; มีค่า เท่ากับ ได้ผลลัพธ์เป็น b = 3, i = 4

13  ++a หมายถึง เพิ่มค่าที่เก็บอยู่ในตัวแปร a ขึ้นมาอีก 1 แล้วจึงค่อยนำตัวแปร a ไปใช้งาน i = 3 ; b = ++i; i = 3 ; i = i + 1 ; b = i; มีค่า เท่ากับ ได้ผลลัพธ์เป็น b = 4, i = 4

14  a-- หมายถึง นำค่าที่อยู่ในตัวแปร a ไปใช้ งานก่อน แล้วจึงทำการลดค่าของ a ลงไปอีก 1 i = 3 ; b = i--; i = 3 ; b = i; i = i - 1 ; มีค่า เท่ากับ ได้ผลลัพธ์เป็น b = 3, i = 2

15  --a หมายถึง ลดค่าที่เก็บอยู่ในตัวแปร a ลง ไปอีก 1 แล้วจึงค่อยนำตัวแปร a ไปใช้งาน i = 3 ; b = - -i; i = 3 ; i = i - 1 ; b = i; มีค่า เท่ากับ ได้ผลลัพธ์เป็น b = 2, i = 2

16 >, =, <=, ==, !=  ใช้ในการเปรียบเทียบ มักเจอในการทำงานแบบมี เงื่อนไข เช่น  ให้พิมพ์คำว่า “pass” เมื่อผู้ใช้ได้คะแนนตั้งแต่ 50 ขึ้นไป  ให้พิมพ์คำว่า “fail” เมื่อผู้ใช้ได้คะแนนน้อยกว่า 50 > หมายถึงการเปรียบเทียบ “ มากกว่า ” < หมายถึงการเปรียบเทียบ “ น้อยกว่า ” >= หมายถึงการเปรียบเทียบ “ มากกว่าหรือเท่ากับ ” <= หมายถึงการเปรียบเทียบ “ น้อยกว่าหรือเท่ากับ ” == หมายถึงการเปรียบเทียบ “ เท่ากับ ” != หมายถึงการเปรียบเทียบ “ ไม่เท่ากับ ”

17 ex4.cpp #include void main() { int num1,num2; printf("Enter 2 integer, and I will tell you\n"); scanf("%d%d",&num1,&num2); if (num1 < num2) { printf("%d is less than %d\n",num1,num2); } } // end program

18  ลองเพิ่มคำสั่งต่อท้ายว่า if (num1 > num2) { printf("%d is greater than %d\n",num1,num2); } แล้วรันโปรแกรมทดสอบ  ลองเพิ่มคำสั่ง if ในการเช็คเงื่อนไข =, ==, != แล้วรันโปรแกรมทดสอบ


ดาวน์โหลด ppt Operator & Expression รายวิชา ง 40102 หลักการแก้ปัญหา และการโปรแกรม.

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


Ads by Google