อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer...

180
อาจารย ดร. นัฐพงศ สงเนียม http://www.siam2dev.net [email protected] , [email protected] Last updated : 08-12-2560

Transcript of อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer...

Page 1: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

อาจารย ดร. นัฐพงศ สงเนียมhttp://www.siam2dev.net

[email protected] , [email protected]

Last updated : 08-12-2560

Page 2: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operator คือสัญลักษณ หรือ keywords ท่ีใชสําหรับนําคามาคํานวณบางอยางใหไดเปนผลลัพธ ซึ่งจะเรียกอินพุตของ operator วา operand

ตัวดําเนินการเดี่ยว Unary Operator ใช operand 1 ตัว ซึ่งมี 2 แบบ คือ◦ Pre-fix unary operator เชน --y , ++x ◦ Post-fix unary operator เชน y-- , x++ , i++ , i--

Binary Operator ใช operand 2 ตัว เชน a + b , x / y , a = 5 Y*5

x/z

Page 3: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ตวัดาํเนินจะอยู่ด้านหน้าของ Operand ++X ++Y

Page 4: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x = 5; --x; // เอาคา่ x ลบดว้ย 1

System.out.println(x);

int x = 5; System.out.println(--x);

4

4

Page 5: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x = 5; x--; เอาคา่ x ลบดว้ย 1

System.out.println(x);

int x = 5; System.out.println(x--); System.out.println(x--);

4

5

Page 6: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

คาํศพัท์

ไวยากรณ์ การประกาศตวัแปร

ผลลพัธ ์หน้าจอ คาํตอบ

อธิบายโค้ด

เขียนโปรแกรมด้วย

Page 7: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X++ Y++ I++ int x;

X+=5;ผลลพัธจ์ะเป็นอยา่งไร

Syntax Errorภาษาจาวา เป็น ภาษา แบบ case sensitive

int x;X++;ผลลพัธจ์ะเป็นอยา่งไร

Page 8: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x;x++;ผลลพัธจ์ะเป็นอยา่งไร

int x;x--;ผลลพัธจ์ะเป็นอยา่งไร

Page 9: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

4.3 ปีแสง ก่ีกิโลเมตร

300000 *60*60*24*365*4.3

ท่ีเหลือเป็นความรู้ระดบั เบสิก พืน้ฐาน

Page 10: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

byte = 8bit , 2^7 short = 16bit ,2^15 int = 32bit หรอื 4 Byte long = 64bit หรอื 8 Byte

, 2^63

Byte Short Integer Long

PDT จากโค้ดน้ี มีข้อผิดพลาดหรือไม่ จะแก้ไขอย่างไร

ADT

Type Wrapper Class

Page 11: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 12: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Byte Short Integer Long

MIN_VALUEMAX_VALUE

Page 13: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

3.5 KM = ? CM

1. สรา้ง Project ตัง้ชือ่ทีเ่หมาะสม2. วธิกีารคดิ

3. การรบัขอ้มลู

4. การแปลง สตูรคาํนวณ ทาํอยา่งไร

?ถ้าโจทยแ์บบต้องมีความรู้เก่ียวกบัอะไร?

เทียบบญัญติัไตรยางศ์

Page 14: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เอก็ซะ 10^18 เพตะ 10^15 เทระ 10^12 = 1,000,000,000,000 จกิะ

เมกะ

เดคา

เดซิ

มลิลิ

Page 15: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

float 4 byte double 8 byte

Page 16: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1

2

3

Page 17: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ถ้า รบั มาเป็น เงินสกลุดอลล่ารส์หรฐั ให้แปลงเป็นเงินบาท

หรอื แปลงเงินเยนเป็นเงินบาท

หรอื แปลงจากเงินหยวนเป็นเงิน บาท

กาํหนดให้ผูใ้ช้สามารถเลือกหน่วยสกลุเงินได้

*** กาํหนดให้เลือก สกลุเงินก่อน แล้วป้อนจาํนวน

เงิน แล้วแปลงให้เป็นเงินบาท

14.17

ทาํได้ เกือบ

ทาํไม่ได้

Page 18: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

จะทาํใหเ้ลอืก หน่วยไดอ้ยา่งไร?

คาํตอบ ให้แสดงข้อความดงัน้ี

กรณุาเลือกสกลุเงิน

1. Dollar (30)2. Yen (100/30)3. Yuan (5)

if (ans==1) {คิดแบบ US dollar} else if (ans==2) {

} else if (ans==3) {

}

Page 19: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 20: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 21: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

if(ans==1) {

} else if(ans ==2) {

} else if(ans ==3) {

}

Decision Control•If•Switch case

Page 22: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 23: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 24: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

[ 1 ] พท. วงกลม

[ 2 ] พท. สามเหล่ียม

[ 3 ] พท. ส่ีเหล่ียม

[ 4 ] พท. ส่ีเหล่ียมคางหมู

[ 5 ] เส้นรอบวงกลม

[ 6 ] ปริมาตรทรงกลม

สง่ วนัที ่17 ธ.ค. 2560

Page 25: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 26: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เกิด กาํหนดตวัแปร ไม่ถกูต้อง หรอื เกบ็ค่าเกินขนาดท่ีตวัแปรจะรองรบั ซ่ึง

เรียกว่า Overflow การผิดพลาดแบบน้ีเป็น Syntax Error วิธีแก้ให้ปรบัขนาดตวัแปรให้รองรบัขนาดข้อมลู

จากโค้ดน้ี มีข้อผิดพลาดหรือไม่ จะแก้ไขอย่างไร

Page 27: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 28: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

วนัจนัทร ์ที ่26 ธ.ค. 2559

◦ สาํหรบั นศ. วทิยค์อมฯ 58/1 และ

58/2

*** อาจมีการเปล่ียนแปลง

Page 29: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

27 ธ.ค. 2558

Lec01-Lec05 ทฤษฏ ี+ ขอ้เขยีน + ปฏบิตัิ

Facebook Page :: java2oop

Page 30: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

+-+*/ฯลฯ

5 + 6

Operand Operand

X + Y

SUM += Y

Operator

Page 31: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Term คือคาหน่ึงคา อาจจะเปนคาคงท่ี หรือ คาท่ีอยูในตัวแปรExpression คือหนวยของโปรแกรมท่ีสามารถคํานวณออกมา

เปนคาคาหน่ึง ซึ่งอาจจะเปน term เดียว ๆ หรือประกอบขึ้นจากหลาย ๆ term และ operator

7 X

X + 7Math.sqrt(X)

Y - Math.sqrt(X)A+b-5/2*4/6+7

ตวัอยา่ง เชน่

Term

Term

Expression

Arithmetic ExpressionBoolean Expression

Page 32: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = 5SUM = X+YX = 5;X = x – 5;

{x= x-5;y=y*2;

}

X87y

term

expression

block

Statementประโยค ;

ifwhileformethodclass

== Comparison operatorเป็นตวัดาํเนนิการในการเปรยีบเทยีบคา่

= Assignment operatorเป็นตวัดาํเนนิการในการกาํหนดคา่ใหต้วัแปร

Page 33: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

START

READ X

X > 10

STATEMENT1

YES

FALSE

NO

TRUE

T

F

STATEMENT2

X >10if(x > 10) {

} else {

}

Boolean expression

Page 34: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Assignment Operators◦ สําหรับกําหนดคา โดยใช operator =

Arithmetic Operators◦ สําหรับการคํานวณทางคณิตศาสตร

Bit-wise Operators◦ สําหรับกระทํากับ bits ของเลขจาํนวนเต็ม

Relational Operators◦ สําหรับการเปรียบเทียบ ใหผลลพัธเปนคา boolean

Logical Operators◦ สําหรับใชกระทํากับขอมลูชนิด boolean

Conditional Operators◦ สําหรับเปรียบเทยีบแลวตัดสินใจทําประโยคทีก่ําหนดให

Page 35: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ภาษา java มี operators = สําหรับทําการกําหนดคา (assignment)

รูปแบบคําสั่ง

variable = [constant | expression];

Example

X = ( a * a + 4.0 * b ) / 2.0;

Y = 5;

(อานวา ใหเอาคา 5 เก็บไวในตวัแปร Y)

MyClass.name = “alovela”;

1. int y;2. y=100;3. y=5;

บรรทดัน้ีจงึไม่

แปลวา่ y กบั 5 เทา่กนั

int y =4;y = 5;

Page 36: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

SET Y 10SET SUM X

X = 5Y=10

vb, java

Page 37: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

SET X 5 SET Y X+2; SET SUM SUM + i

= X = 5; Y = X+2; SUM = SUM + i;

Java

Algorithm/Pseudo-code

:=X := 5;Y := X+2;SUM := SUM + i;

Pascal , Delphi

if(x==5) {}

Java

Page 38: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x=1;if(x==5)

x = x+3;x = x+9;

int x=8;if(x==5)

x = x+3;x = x+9;

int x=5;if(x==5)

x = x+3;x = x+9;

int x=5;if(x==5)

x = x+3; else

x = x+9;

int x=5;if(x==5) {

x = x+3; x = x+9; }

statement Variable declaration statement

10

Page 39: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x=5;if(x==5)

x = x+3; else

x = x+9;8

T

F

int x=5;if(x==5) {

x = x+3;}else {

x = x+9;}

x = x + 20;

35

T

F

28

Page 40: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x=1;if(x==5)

x = x+3;x = x+9;

10

int x=1;if(x==5) {

x = x+3;x = x+9;

} 1

True/False

int x=5;if(x==5) {

x = x+3;x = x+9;

} 17

int x=6;if(x==5) {

x = x+3;x = x+9;

} 17

Page 41: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

class TestOperator{public static void main(String [] args){ int x ,y ,z ;

x = y = z = 1;System.out.println(x + "," + y +"," + z );x = (y = (z = z + 1 )+ 1 ) + 1;System.out.println(x + "," + y +"," + z );x = (y = 1) + (z = 1) ;System.out.println(x + "," + y +"," + z );//x = y = 1 + z = 1 ;

}}

double x,y,z;int k,g;byte P,B;

//ใหท้าํจากขวามาซา้ย

นราธร

=

??? ปวณีา

??? โรจน์ศกัดิ ์

โปรแกรมน้ี จะไดผ้ลลพัธ ์คอื

ใหเ้วลา 5 นาท ี(13.35)

Page 42: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x; ....default ... 0 , null

Page 43: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

PDTdouble x,y,z;int k,g;byte P,B;

Double x,y,z;Integer k,g;Byte P,B;

k.MaxVALUES();

*** ถา้ตัง้ตวัแปรแบบ type wrapper class แต่ทาํงานแบบ PDT

Class

Page 44: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

()^ xor* /

- +

X= 3 * 2-5/(4-2)*(7-2)

X= 3 * 2-5/(4-2)*(7-2)

X = …………………………

5.5

5.5

Page 45: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 46: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 47: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = 2*8/(5-8*3)/(9-7)

16 / -19/ 2

-19/32

Page 48: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = 5*2+8-5*7/3-3+5X = 5*2+8-5*7/3-3+5

10+8 - 35/3 - 8

10 – 35/3-1 กวา่

Page 49: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = 5 + 4 – 9 X = 8 / 2 * 7

X = 8 / 2 * 7 – 5 + 8

Page 50: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operators ใชสําหรับการคํานวณทางคณิตศาสตร ซึ่งจะมี Operands และผลลัพธเปนตัวเลข จํานวนเต็มหรือทศนิยมก็ได แบงเปน 4 ประเภทคือ

Integer Arithmetic Operators Floating-point Arithmetic Operators Arithmetic Assignment Operators Increment and Decrement Operators

Page 51: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Integer Arithmetic Operators ไดแก + (บวก), - (ลบ), * (คูณ), / (หาร) และ % (modulus) ที่ใชกระทํากับเลขจํานวนเตม็และจะไดผลลัพธเปนเลขจํานวนเต็ม

Floating-point Arithmetic Operators ไดแก + (บวก), - (ลบ), * (คูณ), / (หาร) และ % (modulus) ที่ใชกระทํากับเลขจํานวนทศนยิมและจะไดผลลัพธเปนเลขทศนิยม

Page 52: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Opt Integer Output Float Output

+ + 1 1 + 1.0 1.0

- - 2 -2 – 2.0 -2.0

ตัวดําเนนิการเดี่ยว(unary operator)

Page 53: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 54: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Opt Integer Output Float Output

+ 1 + 2 3 1.0 + 2.0 3.0

- 2 - 3 -1 2.0 – 3.0 -1.0

* 3 * 4 12 3.0 * 4.0 12.0

/ 24 / 5 4 24.0 / 5.0 4.8

% 16 % 7 2 16.0 % 7.0 2.0

ตัวดําเนนิการคู(binary operator)

MODULATE การหารเอาเศษ

8.0/2= ?

Page 55: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int i=1; i <= 1000; i++) {if(i % 2 == 0) {

System.out.println(i);}

}

1001

2,4,6,…1000

100,98,96,…4,2

Postfix Unary OperatorTestPostFix

คาํถาม

•โปรแกรมน้ีทาํอะไร

•โปรแกรมน้ี จะทาํทัง้หมดกีร่อบ

•โปรแกรมน้ี จะแสดงคา่ i กีค่ร ัง้

Page 56: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

รปูแบบ

for(ค่าเร่ิมต้น ; เง่ือนไข ; ค่าเพ่ิมหรือลดค่า กาํหนดจาํนวนรอบ;) {

}

ตวัอย่าง

for(int I =1; I <= 10 ; I++;) {System.out.println(I);

}

Page 57: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 58: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 59: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int i=1; i <= 1000; i++) {if(i % 10 == 0) {

System.out.println(i);}

}

1001

2,4,6,…1000

100,98,96,…4,2

Postfix Unary OperatorTestPostFix

คาํถาม

•โปรแกรมน้ีทาํอะไร

•โปรแกรมน้ี จะทาํทัง้หมดกีร่อบ

•โปรแกรมน้ี จะแสดงคา่ i กีค่ร ัง้

Page 60: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 61: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 62: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

จงเขยีนคาํสัง่เพือ่หา เลขตัง้ 500 - 1000 มเีลขอะไร ที ่

5 หารลงตวั จงแสดงออกมา

คาํตอบ

int i;for(i=500; i<=1000;i++) { }

คาํตอบ

int i;for(i=500; i<=1000;i++) {

}

Page 63: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

จงเขยีนโปรแกรม เพือ่รับคา่(x) แลว้หาคา่ของ 1^2 + 2^3 + 3^4 + 4^5 +… + X^X+1

Enter Number :: 5

1^1 + 2^2 + 3^3+4^4+5^5=???

Page 64: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1. package …..ชือ่โปแกรม Test_Power2. import java.util.Scanner;3. ………………………………..4. Scanner Sc = new Scanner(System.in);5. System.out.print(“Enter Number : ”);6. int x = Sc.nextInt();7. long sum=0; 8. for(int I = 1; I <=x ; I++) {9. sum = sum + (long)Math.pow(I,I+1);10. }11. System.out.println(“1^2+2^3 +… + x^x+1” + sum);

“Enter Number”

Page 65: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

จะหา PRIME NUMBER ได ้อยา่งไร

Page 66: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

รบัและแสดงผล โดย

ไม่ระบอุปุกรณ์รบัข้อมลูจาก

แป้นพิมพ์

Page 67: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

STATEMENT 1STATEMENT 1

STATEMENT 3

STATEMENT 3

TRUE

FALSE

YES

NO

Y

N

T

F

Page 68: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ตวัทีเ่ป็นคา่ Prime Number ตัง้ 1-100 มเีลขอะไรบา้ง จงเขยีนคาํสัง่

ภาษา จาวา

จงรบัตวัเลขเข้ามาแล้วตรวจสอบวา่เป็น Prime Number หรอืไม่

9 = Prime Number?1,3,9

STEP 1 STEP 2

Page 69: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

คาํตอบ

int i;for(i=500; i<=1000;i++) {

}

คาํตอบ

int i;for(i=500; i<=1000;i++) {if(i % 5 ==0) { System.out.println(“I : ” + i);}

}

Step 1

Step 2

1. for loop จะทาํกีร่อบ .......................

2. และ System.outprintln จะถกูทาํกีค่ร ัง้ ...........

Page 70: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

y++; // y = y + 1; I++ ; …. I = I +1; sum++ …. sum = sum + 1

Page 71: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int y=5; System.out.println(y++); // 5

int y=5; System.out.println(++y); // 6

Page 72: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

คาํตอบ

int i;int x=0;for(i=500; i<=1000;i++) {if(i % 5 ==0) { System.out.println(“I : ” + i);x++;}

}System.out.println(x);

Step 2

1. for loop จะทาํกีร่อบ .......................

2. และ System.outprintln จะถกูทาํกีค่ร ัง้ ...........

1. ตวัทีห่ารดว้ย 5 ลงตวัมกีีต่วั

2. ทีห่ารไมล่งตวั มกีีต่วั

Page 73: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 74: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ถา้ใส ่คา่ arsg[0] = 100จาํนวนจะทาํกีร่อบ ?คา่ I สดุทา้ยคอื อะไร ...........

Page 75: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

I++ …………………. I = I + 1 ++I …………………… I = I+1

i=500;System.out.println(i++);i++;System.out.println(++i);

500

503

Page 76: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

I-- …………………. I = I - 1 --I …………………… I = I-1

i=500;System.out.println(i--);i--;System.out.println(--i);

?

?

Page 77: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

i=875;System.out.println(i--);i++;System.out.println(--i);

….

….

875

874

Page 78: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int i;i =1025;i+=5;System.out.println(i--);i++;System.out.println(i++);

….

….

1030

?1030

Page 79: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

i=1025;System.out.println(i--);i++;System.out.println(i++);

….

….

1025

1025

Page 80: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

i=125;System.out.println(i--);i++;System.out.println(i++);

….

….

???

???

Page 81: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 82: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

i = 5 i==5 Comparison Operator

Assign Operator

Page 83: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int i=1000; i >= 1; i--) {if(i % 2 == 0) {

System.out.println(i);}

}

0

2,4,6,…100

100,98,96,…4,2

--i

Page 84: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

5 นาที

for(int i=997;i>=1;i--) {if(i%2==1) {System.out.println(i +” , ”);} else {

}}

Page 85: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 86: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 87: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 88: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X++ X— --X ++X

Post Fix

Pre Fix

X=8;System.out.println(--X);

X= 8;System.out.println(X--);System.out.println(x);

7

87

X = X – 1;X = X+1;

Page 89: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

%

1. 5 % 1588555 = ?2. 1897744 % 2 = ?

ODDEVEN

Page 90: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1. 2 + 4 + 6 +8 …100000 = ? 2. 2^2 + 3^2 + 4^2 +.. 50^2=? 3. 1^10 + 2 ^ 9 + 3^8 +… 8^3 + 9^2 + 10^1 =?

(เพียรพรรณ)(แนะนํา ใช ้double)

2*2*2 ประถม2^3 มัธยมMath.pow(2,3) มหาวทิยาลัย

ผูห้ญิง

ผูช้าย

Page 91: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 92: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เชน่ 5

2*1 = 2 2*2 = 4 2*3 = 6

… 2*12 = 24 --------------------------

5*12 = 60

for(int i=2;i<=x;i++) {

for(int j=2;j<=12;j++) {System.out.println(i + ”*” +j

+ “=” + i*j);}

}

Page 93: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 94: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

If Switch case / Select case Loop◦ For ………………………………..การวนลปู ต้องรู้จาํนวนท่ีแน่นอน

◦ Do ………………………….. ให้ทาํไปก่อนแล้วค่อยมาเชค็ ตรวจสอบเง่ือนไขท่ี

หลงั

◦ While ……………..ตรวจสอบก่อนแล้ว ค่อยถ้าจริง

Page 95: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

คา่เริม่ตน้ สดุทา้ย

จากน้อยไปหามาก

จากมากไปหาน้อย

5 5

for(int i = 5; i<= 100; i++) {if(i % 5 ==0) {

System.out.println(i);}

}

Inteval

Page 96: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ไมค่วรเอาผลรวมไปแสดงในลปู

ผลรวมจะแสดงคา่สดุทา้ยออกมา ควรอยูห่ลงัลปู

1 + 2 + 3 . + 10000 for(int I = 1;for(int I = 1;i<=1000;

for(int I = 1;i<=1000;i++) {Total = Total + I;

}

for(int I = 1;i<=1000;i++) {Total = Total + I;

}

Page 97: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int i = 1;i<=1000;i++) {Total = Total + i;System.out.println(Total);}

long Total=0;for(int i = 1;i<=1000;i++) {Total = Total + i;

}System.out.println(Total);

ทัง้สองแบบนี้แตกตา่งกนัอยา่งไร ?

1 + 2 + 3 ….1000 = 500500

Page 98: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int I = 2 ; I <=1000;I++) {if(I % 2 ==0) {Total = Total + I;}

}System.out.println(“Total : ” + Total);

1. จาํนวนรอบทีว่นกีร่อบ2. คา่ สดุทา้ยของ I คอื ...................3. คา่ total คอื ..............................4. มกีารพมิพค์า่ Total กีร่อบ ............

สว่นของโปรแกรม

Page 99: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

for(int I = 2 ; I <=1000;I++) {if(I % 2 ==0) {Total = Total + I;}

}System.out.println(“Total : ” + Total);

Page 100: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 101: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

N/2(N+1)10/2*(10+1) = 55100/2*101 = 50501000000/2*(1000001) = 500000500000

Page 102: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 103: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 104: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 105: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 106: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 107: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 108: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Integer.parseInt()

long x; x = Math.pow(2,5);

return เป็น double

long x; x = (long)Math.pow(2,5);

casting

Page 109: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 110: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

System.out.println(1 + 2);System.out.println(2 - 3);System.out.println(3 * 4);System.out.println(6 % 7);

System.out.println(1.0 + 2.0);System.out.println(2.0 - 3.0);System.out.println(3.0 * 4.0);System.out.println(6.0 % 7.0);

System.out.println(2.0 - 3);System.out.println(3 * 4.0);

Page 111: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operator ที่ใชคาของตัวแปรตัวหนึ่งมากระทาํกับ operand แลวเก็บผลลัพธไวที่ตัวแปรตัวนัน้ โดยมีรูปแบบประโยคดังนี้

<variable> <op> = <operand>;

Example

X += 1; // X = X + 1Y -= 5; // Y = Y - 5X /= 4; // X = X / 4

Page 112: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = X + 5; ……………… X+=5; X = X + Y; ……………… X +=Y;

+= -= *= /=

Total = Total + x; ……. Total +=x;

Page 113: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = X + 5; X+=5; SUM = SUM + 5; SUM +=5;

Y *=7 ; Y = Y * 7;

Page 114: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

op Form Meaning

+= x += y x = x + y

-= x -= y x = x – y

*= x *= y x = x * y

/= x /= y x = x / y

%= x %= y x = x % y

Page 115: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X = X + Z K = K - 5 ; SUM = SUM /7;

X+=Z;

K-=5;

SUM/=7;

Page 116: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x = 1;x += 1; System.out.println(x); 2x *= 2; System.out.println(x); (42 จริาพร)x -= 3; System.out.println(x); (-2 วลิาวัณย์)x /= 4; System.out.println(x); (0 พชรณัฏฐ์)float y = 1f;y += 1; System.out.println(y) (ธนวัฒน์ 2.0);y *= 2; System.out.println(y); (2.0 สุปัญโญ)y -= 3; System.out.println(y); (-2.0 ศราวุฒ)y /= 4; System.out.println(y) 0.25 กรพฒัน์);

Page 117: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x = ¼; 0

X= 5/2; = 2.5

Page 118: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operators สําหรับใชในการเพ่ิมคาหรอืลดคาของตัวแปรทีละ 1 เชน++x; จะมีความหมายวา x = x + 1; และ--x; จะมีความหมายวา x = x – 1;

มีวิธีใช 2 แบบคือ1. ใชแบบ prefix เชน ++x จะทําการบวกหนึ่งใหแก x กอน

แลวจึงสงผลลพัธออกมาเปนคาที่ไดจากการกระทํา2. ใชแบบ posfix เชน x++ จะเก็บคา x ตอนนัน้ไวกอน แลวจึง

ทําการบวกหนึง่ แลวจึงสงคา x ที่ไดจากการกระทําออกมาเปนผลลัพธ

Page 119: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ตัวดําเนินการสําหรับเพ่ิมคา ++ตัวดําเนินการสําหรับลดคา --

int x = 10;int y;y = ++x;System.out.println(x);System.out.println(y);

int x = 10;int y;y = x++;System.out.println(x);System.out.println(y);

1111

1110

Page 120: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int a, b, x = 1, y = 1 ;a = x++; b = ++y;System.out.println(a + "," + b);a = x--; b = --y;System.out.println(a + "," + b);

Page 121: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 122: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เปน Operator สําหรับกระทํากับทุก ๆ bits ของ operands ท่ีเปนขอมูลเลขจํานวนเต็ม(ไดแก byte, short, int และ long) หรือเปนตัวอักษร char แบงออกเปน 2 กลุมคือ

Boolean Bit-wise Operators Assignment Bit-wise Operators

Page 123: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Op Meaning Example Result

~ Bitwise NOT ~(0110) 1001

& Bitwise AND 0011 & 0101 0001

| Bitwise OR 0011 | 0101 0111

^ Bitwise XOR 0011 ^ 0101 0110

<< Shift left 1011 << 2 1100

>> Shift right(sign bit) 1011 >> 2 1110

>>> Shift right(zero fill) 1011 >>> 2 0010

Page 124: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

op Form Meaning

&= x &= y x = x & y

|= x |= y x = x | y

^= x ^= y x = x ^ y

<<= x <<= y x = x << y

>>= x >>= y x = x >> y

>>>= x >>>= y x = x >>> y

Page 125: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

System.out.println(~2);System.out.println(2&1);System.out.println(2|1);System.out.println(2<<1);System.out.println(2<<2);System.out.println(-4>>1);System.out.println(-1>>>1);

Page 126: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ไดแ้ก่ ==, !=, >, <, >=, <= ใชทํ้าการเปรยีบเทยีบคา่ของ operands ทมีชีนดิขอ้มลูเป็น byte, char, short, int, long, float และ double สําหรับชนดิขอ้มลู boolean จะทําการเปรยีบเทยีบเทา่กบั หรอื ไม่เทา่กบัไดเ้ทา่นัน้ผลลพัธจ์ากการเปรยีบเทยีบจะไดเ้ป็นคา่ boolean

Page 127: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operator Meaning Example Result

> more than a > b false

< Less then a < b true

>= More than and equal a >= b false

<= Less than and equal a <= b true

== Equal a == b false

!= Not equal a != b true

int a = 0, b = 1;

Page 128: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เปน operat0rs ที่ใชกับ operands ที่มีชนิดขอมูลเปน booleanเทานั้น และใหผลลัพธเปน boolean แบงเปน 3 กลุม

Boolean Logical Operators◦ ไดแก & (AND), | (OR), ^ (XOR), ! (NOT)

Short-circuit Logical Operators◦ ไดแก && (short-circuit AND) , || (short-circuit OR)

Assignment Logical Operators◦ ไดแก &= , |=, ^=

Page 129: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X Y RESULT

T T T

T F F

F T F

F F F

AND

Page 130: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Boolean Logical Operator& b = false & true false| b = false | true true^ b = false ^ true true! b = !true false

Short-circuit logical Operator&& b = false && true false|| b = true || true true

boolean b;

Page 131: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

System.out.println(1<2 & 4==1);System.out.println(1<2 | 4==1);System.out.println(!true ^ 1==1);System.out.println(!(4!=1));

F ^ T …T……?…….

Page 132: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

T T T

T F F

F T F

F F F

if (5 > 4) & (7 < 9) {…..}

T T

Page 133: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

T T T

T F T

F T T

F F F

if (5 > 4) & (7 < 9) {…..}

T T T

Page 134: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

T T F

T F T

F T T

F F F

Page 135: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operators ? ใชร้ว่มกบั : โดยมรีปูแบบดงันี้

ถา้คา่ของ <condition> เป็น true คา่ทีไ่ดจ้ะเป็น <expression 1>

แตถ่า้เป็น false คา่ทีไ่ดจ้ะเป็น <expression 2>

เชน่ System.out.println((a<b)? "aนอ้ยกวา่b":"aมากกวา่หรอืเทา่กบัb" );

(<condition>)? <expression 1> : <expression 2>;

Page 136: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

(4 > 8)? “ 4 มากกวา่ 8” : “4 น้อยกวา่ 8”

if(4 > 8) {…

} else {…

}

Page 137: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

(1==1)? …………………… : …………………..

int X=5; System.out.println((X==1)? “X เท่ากบั 1” : “X ไม่เท่ากบั 1 ”);

True False

int x=5;if(x==1) {…..

} else {…..

}

Page 138: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ให ้รบั ตวัเลข เขา้มา แลว้ ตรวจสอบดวู่าเป็น เลขคู ่หรอืเลขคี่

1. ใหเ้ขยีนแบบ IF2. ใหเ้ขยีนแบบ conditional Operator

Page 139: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

จงเขียนโปรแกรมคิดคาํนวณ ค่าเช่าห้อง โดย รบั จาํนวนห้อง

และ จาํนวนคืนท่ีค้าง

หมดข้อมลู หรือยงั [ Y/N ] คิดรายได้ทัง้หมด ใน 1 เดือน (30 วนั)

Page 140: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1. import java.util.Scanner;……………………..Scanner Sc = new Scanner(System.in);System.out.print(“Enter Number : ”);int x = Sc.NextInt();if(x % 2 == 0) {

System.out.println(x + “ เป็นเลขคู”่);} else {System.out.println(x + “ เป็นเลขคี”่);

}

Page 141: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1. import java.util.Scanner;……………………..Scanner Sc = new Scanner(System.in);System.out.print(“Enter Number : ”);int x = Sc.NextInt();System.out.println( (x % 2 == 0)? x + “ เป็นเลขคู”่

: x + “ เป็นเลขคี”่ );

Page 142: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

[],(), op++, op--

++op,--p, +op, -op, ~, !

New, (type)op

*,/,%

+,-

<<,>>,>>>

<,>,>=,<=,instanceof

==,!=

&

^

|

&&

||

?:

=,+=,-=,*=,/=,%=,&=,^=,|=,<<=,>>=,>>>=

สําคัญมาก

สําคัญนอย

Page 143: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ลําดับการกระทําของ operators ที่มีลําดับความสําคัญเทากัน มีทั้งการทําจากซายไปขวา และขวาไปซาย เรียกวา associativity ข้ึนอยูกับชนิดของ operator เชน operators = ม ีassociativity ทางขวา คือจะทําจากขวามาซาย เชน

a = b = c = 1 ; ทํางานดังนี้ a = (b = (c = 1))operators + , - มี associativity ทางซาย คือจะทาํจากซายมาขวา

a + b – c + d ; ทํางานดังนี้ ((a + b) – c) + d

Page 144: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

System.out.println(1 + 2 * 3 - 2);System.out.println((1 + 2) * (3 -2));System.out.println(2 * -5 - 17 % 3/ 2 + 26 * 2 + 4);

ทดลองใสวงเล็บใหถูกตองตามลาํดับของ Operator

Page 145: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เม่ือตองการดําเนินการทางคณิตศาสตรระหวาง operands ท่ีมีชนิดขอมูลท่ีแตกตางกัน จะตองแปลงชนิดขอมูลใหเปนชนิดเดียวกันกอน แบงการแปลงออกเปน 2 ประเภท คือ

Implicit type conversion ◦ เปนการแปลงชนดิขอมูลที่ภาษาจาวาทําใหโดยอัตโนมัติตามความเหมาะสม

Explicit type conversion (หรือ Casting) ◦ เปนการแปลงชนดิขอมูลที่ผูเขียนโปรแกรมตองทําดวยตนเอง

Page 146: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operand byte char short int long float double

byte int int int int long float double

char int int int int long float double

short int int int int long float double

int int int int int long float double

long long long long long long float double

float float float float float float float double

double double double double double double double double

ผลลพัธข์องการใชO้perators รว่มกนั Operand ชนิดต่าง ๆ

Page 147: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เปนการแปลงชนิดขอมูลที่ผูเขียนกําหนดเอง

รูปแบบ

เชน a = (int)(c + b);

ควร casting ชนิดขอมูลจากคาที่เล็กกวาไปเปนคาที่ใหญกวา เพื่อลดการสูญหายของขอมูล

(<type>)<operand>

ชนดิขอ้มลู ขนาดขอ้มลูdouble

float

long

int

short

byte

ขนาดใหญ่

ขนาดเล็ก

Page 148: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

float a = 1.0F, b = 2.5F;int c;double d;d = a + b;System.out.println("d = " + d);c = (int)(a + b);System.out.println("c = " + c);

Page 149: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

คลาส Scanner อยูใน package java.util.Scanner จงึตองมีการ

import กอน

จากน้ันทําการสรางวัตถุจากคลาส Scanner โดยมีรูปแบบดังน้ี

Scanner keyboard = new Scanner(System.in);

ตัวอยางการใชงาน

int number;Scanner keyboard = new Scanner(System.in);System.out.print(“Enter an interger value: ”);number = keyboard.nextInt();

Page 150: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

เมธอด การทาํงาน

nextByte() รับขอ้มลูเลขจํานวนเต็มชนดิ Byte ทางแป้นพมิพ์

nextDouble() รับขอ้มลูเลขทศนยิมชนดิ Double ทางแป้นพมิพ์

nextFloat() รับขอ้มลูเลขทศนยิมชนดิ Float ทางแป้นพมิพ์

nextInt() รับขอ้มลูเลขจํานวนเต็มชนดิ Int ทางแป้นพมิพ์

nextLine() รับขอ้มลูแบบ String ทางแป้นพมิพ์

nextLong() รับขอ้มลูตวัเลขชนดิ Long ทางแป้นพมิพ์

nextShort() รับขอ้มลูตวัเลขชนดิ Short ทางแป้นพมิพ์

Page 151: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

7.5

15.5

Page 152: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 153: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 154: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 155: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 156: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Enter Your Name : ….Dr.Nattapong Songneam Your Name is :…… ….Dr.Nattapong Songneam.

String

Page 157: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

import java.util.Scanner; //เรยีกใชค้ลาส Scannerpublic class calnum {

public static void main(String[] args){int x,y; //ประกาศตวัแปร x และ y สาํหรบัเกบ็เลขจาํนวนเตม็Scanner in = new Scanner(System.in); //สรา้งออบเจก็ต ์in สาํหรบัรบั

ขอ้มลู

System.out.print("Input Number 1 : ");x = in.nextInt(); //รบัตวัเลขจาํนวนเตม็มาเกบ็ในตวัแปร xSystem.out.print("Input Number 2 : ");y = in.nextInt(); //รบัตวัเลขจาํนวนเตม็มาเกบ็ในตวัแปร ySystem.out.println(x + " + " + y + " = " + (x+y) ); //แสดงผลการบวก

} }

Page 158: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 159: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 160: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 161: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 162: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

Operators ? ใชรวมกับ : โดยมีรูปแบบดังน้ี

ถาคาของ <condition> เปน true คาท่ีไดจะเปน <expression 1> แตถาเปน false คาท่ีไดจะเปน <expression 2>

เชน System.out.println((a<b)? "aนอยกวาb":"aมากกวาหรือเทากับb" );

(<condition>)? <expression 1> : <expression 2>;

Page 163: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 164: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ถา้ ตวั x หาร ดว้ย 5 ลง ให ้“Print X” ถา้ไมใ่ช ่ให ้“Print Y”

System.out.println((x % 5 ==0)? “Print X” :” Print Y” );

Page 165: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

X หารตวั 5 ลงตวัหรอืไม่

(X % 5 ==0)? X + “หารดว้ย 5 ลงตวั” : x + “หารดว้ย 5 ไมล่งตวั”

T F

Page 166: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1 2 3

5

7

11

13

17

145 เป็น Prime Number หรอืไม่

187 เป็น Prime Number หรอืไม่

5145 เป็น Prime Number หรอืไม่

8115 เป็น Prime Number หรอืไม่

X เป็น Prime Number หรอืไม่

Page 167: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

int x=9; int y=1; if(x%y == 0) { … } else {

}

Page 168: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 169: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1 หาร X ลงตวั หรอืไม ่ ไมต่อ้งทํา เพราะ 1 หารทกุตวัลงตวั

อยูแ่ลว้ ไมนั่บ

X ใดๆ หาร X ลงตวั หรอืไม ่ ไมต่อ้งทํา เพราะ X หารตวัมนั

เองลงตวัอยูแ่ลว้ ไมนั่บ

2 .... X-1

Page 170: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

1 หาร X ลงตวั หรอืไม ่ ไมต่อ้งทํา เพราะ 1 หารทกุตวัลงตวั

อยูแ่ลว้ ไมนั่บ

X ใดๆ หาร X ลงตวั หรอืไม ่ ไมต่อ้งทํา เพราะ X หารตวัมนั

เองลงตวัอยูแ่ลว้ ไมนั่บ

2 .... X/29/2 = 4

1 2 3 4 5 6 7 8 9

1 2 3 4 5 6 7 8

Page 171: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

i<=x-1

Page 172: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 173: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

import java.util.Scanner;public class FindTriangle {public static void main(String[] args) {

double height = 0 , base = 0 , result = 0;Scanner input = new Scanner(System.in);System.out.println("โปรแกรมหาพื้นท่ีสามเหล่ียม");

System.out.println("กรณุาป้อนความสงู ");

height = input.nextDouble();System.out.println("กรณุาป้อนความยาวฐาน ");

base = input.nextDouble();result = 0.5 * height * base;System.out.println("พื้นท่ีสามเหล่ียม = " + result );

}}

Page 174: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

สรางโปรแกรมแปลงหนวย โดยรับ Input ทาง Keyboard ตั้งช่ือ Project และ Class วา DataConv

ดูอัตราการแปลงหนวยไดท่ีเว็บไซตhttp://navy.in.th/dataconv.html

โดยเลือกแปลงหนวยอะไรก็ไดคนละ 1 หนวย

สงไฟลท่ีเปน SourceCode.java มาท่ีE-mail [email protected] หัวเร่ืองอีเมล DataConv_2015.XX_56XXXXXXX

Page 175: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

รับตวัเลขใดๆ [1 - 12] แลว้แสดงสตูรคณู ของแม่สตูรคณูนัน้ๆ

ต.ย. รับ 8◦ 8*1 = 8◦ 8*2 = 16◦ 8*3 = 24◦…◦ 8*12 = 96

Test_Multiply

Page 176: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )
Page 177: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

80 ใหเ้กรด A 70-79 ให ้B 60 – 69 ให ้C 50 – 59 ให ้D 0-49 ให ้E

Scanner + if / switch

Page 178: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

ตํา่กวา่ 5000 ใหข้ึน้เงนิเดอืน 20%

5001-10000 ใหข้ึน้ 15%

10001 – 50000 ใหแ้ค ่10%

มากวา่ 50000 ให ้5 %

Scanner + if / switch

Page 179: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

รบัจํานวน และ ราคา

ราคาสนิคา้รวม ตํา่กวา่ 10000 ลด 20% 10001 – 50000 ลด 15% 50001 – ขึน้ไป ลด 10%

Scanner + if / switch

Page 180: อาจารย ดร. นัฐพงศ ส งเนียม ... · 2019. 5. 4. · Integer Arithmetic Operators. ได แก +(บวก), - (ลบ), * (คูณ, / )

สามเหล่ียม

สีเหล่ียม

วงกลม

วงรี

เส้นรอบวง

ทรงกลม

ส่ีเหล่ียมคางหมู

สตูร พ.ท. + INPUT