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

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

C# Operation สุพจน์ สวัตติวงศ์ 1 Reference: นิรันดร์ ประวิทย์ธนา, เก่ง C# ให้ครบสูตร ฉบับ OOP, วิตตี้กรุ๊ป

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


งานนำเสนอเรื่อง: "C# Operation สุพจน์ สวัตติวงศ์ 1 Reference: นิรันดร์ ประวิทย์ธนา, เก่ง C# ให้ครบสูตร ฉบับ OOP, วิตตี้กรุ๊ป"— ใบสำเนางานนำเสนอ:

1 C# Operation สุพจน์ สวัตติวงศ์ 1 Reference: นิรันดร์ ประวิทย์ธนา, เก่ง C# ให้ครบสูตร ฉบับ OOP, วิตตี้กรุ๊ป

2 Operation ใน C# Operation ใน C# แบ่งออกเป็น 3 ชนิดคือ – Numerical Operation – String Operation – Boolean Operation 2

3 Numerical Operation เป็น Operation ในการคำนวณทางคณิตศาสตร์ สามารถใช้ได้มั้งตัวเลข, เลขทศนิยม และ ตัวอักษร หลักการเหมือนการคำนวณทางคณิตศาสตร์ โดยทั่วไป เครื่องหมายที่ใช้ =, +, -, *, /, %, ++, --, () เป็นต้น 3

4 การหาร ในภาษาคอมพิวเตอร์ มีการหารอยู่ 2 แบบคือ Divide หรือ Div (/) คือการหารโดยปกติ หากตัวแปรที่ทำการหารเป็นจำนวนเต็ม Div จะทำ การหารโดยตัดเศษทิ้ง หากตัวเป็นจำนวนจริง ( ทศนิยม ) จะแสดงค่า ผลลัพธ์การหารตามปกติ Modulus หรือ Mod(%) คือการหารเอาเศษไว้ใช้ งาน 4 Console.WriteLine("17.0%2.0="+(17.0 % 2.0) + " 17%2=" + (17 % 2)); Console.WriteLine("17.0/2.0="+(17.0 / 2.0) + " 17/2=" + (17 / 2)); 17.0%2.0=1 17%2=1 17.0/2.0=8.5 17/2=8

5 Increment Operator และ Decrement Operator เป็น Operator ที่ทำการเพิ่มหรือลดค่าตัวมันเอง โดยใช้สัญลักษณ์ต่างๆ ดังนี้  ++ (Increment Operator) จะทำการเพิ่มค่าให้ตัว แปรทีละ 1 หรือ +1  -- (Decrement Operator) จำทำการลดค่าตัวแปรที ละ 1 หรือ -1 เป้าหมายเพื่อให้กระชับมากขึ้น 5

6 ตัวอย่าง 6 x = 3; Console.WriteLine("x= " + x); Console.WriteLine("x++ =" + (x++)); Console.WriteLine("x= " + x); x= 3 x++ =3 x= 4 x= 3 ++x =4 x= 4 x = 3; Console.WriteLine("x= " + x); Console.WriteLine("++x =" + (++x)); Console.WriteLine("x= " + x); a = 3.0f; Console.WriteLine("a= " + a); Console.WriteLine("a++ =" + (a++)); Console.WriteLine("a= " + a); int x = 3, y = 2, z; float a, b, c; a= 3 a++ =3 a= 4

7 ตัวอย่าง 7 d= A d++ =A d= B char d='A'; Console.WriteLine("d= " + d); Console.WriteLine("d++ =" + (d++)); Console.WriteLine("d= " + d);

8 x++ เท่ากับ x+1? จากที่ผ่านมาจะสังเกตุว่า x++ จะดูเหมือนจะ เท่ากับ x+1? 8 x = 3; Console.WriteLine("x= " + x); Console.WriteLine("x+1 =" + (x+1)); Console.WriteLine("x= " + x); x = 3; Console.WriteLine("x= " + x); Console.WriteLine("x++ =" + (x++)); Console.WriteLine("x= " + x); x= 3 x++ =3 x= 4 x= 3 x+1 =4 x= 3

9 x++ เท่ากับ x+1? 9 x = 3; Console.WriteLine("x= " + x); Console.WriteLine("x+1 =" + (x+1)); Console.WriteLine("x= " + x); x = 3; Console.WriteLine("x= " + x); Console.WriteLine("++x =" + (++x)); Console.WriteLine("x= " + x); x= 3 x++ =4 x= 4 x= 3 x+1 =4 x= 3 x = 3; Console.WriteLine("x= " + x); Console.WriteLine("x=x+1 =" + (x=x+1)); Console.WriteLine("x= " + x); x= 3 x+1 =4 x= 4

11 ขั้นตอนการคำนวณของ คอมพิวเตอร์ ในตัวดำเนินการทางคณิตศาสตร์ 1. วงเล็บ “( )” ไม่ว่าอย่างไรก็ตาม คอมพิวเตอร์จะ ทำการคำนวณในวงเล็บให้เสร็จก่อนดำเนินการ ต่อไป 2.“++” และ “--” กรณีที่เป็น ++ อยู่ด้านหน้า เช่น ++x นับจากซ้ายไปขวาหากเจอเครื่องหมาย เหล่านี้จะทำก่อน 3. การคูณ “*” และ การหาร “ /”, “%” นับจาก ซ้ายไปขวา เจอเครื่องหมายใด ( คูณ หรือ หาร ) ก็ จะทำก่อน 4. การบวก และ ลบ “+”,“-” จากซ้ายไปขวา เช่นกัน เจอเครื่องหมายใด ( บวก หรือ ลบ ) ก็จะทำ ก่อน 5.“++” และ “--” กรณีที่เป็น ++ อยู่ด้านหลัง เช่น x++ นับจากซ้ายไปขวาหากเจอเครื่องหมาย เหล่านี้จะทำก่อน 11

12 Exercise int a=2, b=3, c=4; float d=5.0, e=7.0, f=9.0; *-5-(6*2) 5.(20/5)+(9-5)*6/3 6.a+=5 7.a*=2 8.a/=3 9.a%= / / /3.0f 13. 1/ / % % % / / % % % % b+c*d/e 25. f+c*1/ b+c* (b++) +d b 29. b (c++)+(++c)

13 String Operation เป็น Operation ที่ทำงานกับ String ด้วย operator “+” 13 String s1, s2, s3; s1 = "1"; s2 = "6"; s3 = s1 + s2; Console.WriteLine("s1 ===>"+s1+"\ns2 ===>"+s2+"\ns3=s1+s2 ====>"+s3); s1 ===>1 s2 ===>6 s3=s1+s2 ====>16

14 Boolean Operation หรือ Logical Operation คือ Operation ที่ส่งค่าคืนกลับมาเป็น “True” หรือ “False” เท่านั้น เช่น ==,, >=, !=, &&, || เป็นต้น โดย Logical Operation มีการแบ่งออกเป็น – Comparison Operator – Logical Operator 14

15 Comparison Operator เครื่องหมายความหมายตัวอย่าง == เท่ากับ a==b < น้อยกว่า a มากกว่า a>b >= มากกว่าเท่ากับ a>=b != ไม่เท่ากับ a!=b 15

16 Logical Operator เครื่องหมายความหมายตัวอย่าง && และ a&&b || หรือ a||b ! ไม่ !b 16

17 Exercise 1.2 <= > 50 3.(2 1) 4.(5!=6) || (2>3) 5.a!=null 6.c-c==false 7.0== (int) true 8.a=2+1==b 9.(a=2+1)==b 10.a+c!=b+3 17 int a=2, b=3, c=4; float d=5.0, e=7.0, f=9.0; 11.(a=0)==fals e 12.(a=1)==true 13.(b c) 14.(a!=-a) || (b>e) 15.c!=e=b 16.f==b=b 17.!true 18.!false 19.!(a=b)==fals e 20.!(a==b)==fal se

18 Bitwise Operators เครื่องหมายความหมายตัวอย่าง &Bitwise Anda&b |Bitwise Ora|b ^Bitwise XORa^b ~Bitwise complement~b~b <>Bitwise Shift Righta>>b 18 เป็น operator อย่างหนึ่งของ Numerical Operation ที่จะกระทำกับทุก ๆ bit ของ operand ในชนิด integer type(sbyte, short, int, long, byte, ushort, uint, ulong) การทำงานของ Bitwise เป็นการคำนวณที่เร็วกว่าการคำนวณใน แบบปกติ

19 Truth Table AND aba&b

20 Truth Table OR aba|b

21 Truth Table XOR aba^b

22 Truth Table Complement 22 a~a 01 10

23 การคำนวณของ Bitwise Operators สมมติ ตัวแปร a =3; b=2; ให้ทำการเปลี่ยน a และ b เป็นเลขฐาน 2 ก่อน จากนั้นจึงนำมาคำนวณกับ Bitwise ดังนี้ 23 a= 11 2 b= 10 2 a&b & a|b | a^b & ~b ~ -3 b<< << b>> <<

24 ประโยชน์ของ Bitwise Operators ใช้ในการคำนวณได้เร็วขึ้น สามารถนำมาใช้ในการ คูณ 2 แบบเร็วๆ ได้เช่น 4<<1 = 8 สามารถมาทำผลหาร 2 แบบเร็วๆ ได้เช่นกัน เช่น 18>>1 =9 สามารถใช้ในการทำ Flag ได้ โดยเก็บค่าต่างๆ ไว้ใน Bit 24 int personal = 1; int group = 2; int all = 4; int user_permission = personal | group; if ((personal & user_permission) != 0) Console.WriteLine("access granted");

25 Bitwise Assignment Operator นอกจากเครื่องหมาย = ยังมี Operator อื่นๆ อีก เช่น &=, |=, ^=, >= โดยเครื่องหมายเหล่านี้ทำให้ Code ดูกระชับ มากขึ้น และเหมือนกับ Assignment Operator ปกติ 25 Assignment Operator มีความหมายเท่ากับ x&=3;x=x&3; x|=3;x=x|3; x^=3;x=x^3; x<<=3;x=x<<3; x>>=3;x=x>>3;

26 Exercise 26 1.a|b 2.a&b 3.(a&b)|(a&c) 4.a&(b|c) 5.(a|b)&(a|c) 6.a|(b&c) 7.a^b+c|b 8.a^b 9.d*e/1.0^b 10.f=a|b|d int a = 1, b = 2, c = 3, d = 4, e = 5, f = 7, g =8; 11.a&b&c 12.a&b|c 13.a|b|d|g 14.a&b&d&g 15.g>>1 16.g<<1 17.b<<2 18.(4*2)>>1 19.(16)>>3 20.~a

27 สรุปลำดับการใช้งานของ Operator ทั้งหมดใน C# 1.() 2.++, -- กรณี วางไว้หน้าตัวแปร 3.*, /, % 4.+, - 5.==, != 6.&& 7.|| 8.=, +=, -=, /=, %= 9.++, -- กรณี วางไว้หลังตัวแปร 27

28 Enumerations การกำหนด Constant แบบ Enum กำหนดโดยตรงใน namespace ดังนี้ วิธีใช้งานดังต่อไปนี้ enum Color { red, blue, green } // values: 0, 1, 2 enum Access { personal = 1, group = 2, all = 4 } enum Access1 : byte { personal = 1, group = 2, all = 4 } Color c = Color.blue; // enumeration constants must be qualified Access a = Access.personal | Access.group; if ((Access.personal & a) != 0) Console.WriteLine("access granted"); 28

29 การใช้เครื่องหมายของ enum ใน C# Enumerations ไม่สามารถใช้ int แทนได้ ( ยกเว้นถูก กำหนด Type ไว้ก่อน ) Enumeration types ถูก inherit จาก object จึงใช้ method (Equals, ToString,...) ได้ Class System.Enum ครอบคลุมการทำงานบน enumerations (GetName, Format, GetValues,...). 29


ดาวน์โหลด ppt C# Operation สุพจน์ สวัตติวงศ์ 1 Reference: นิรันดร์ ประวิทย์ธนา, เก่ง C# ให้ครบสูตร ฉบับ OOP, วิตตี้กรุ๊ป

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


Ads by Google