72
ADVANCED COMPUTER PROGRAMMING การเขียนโปรแกรมคอมพิวเตอร์ขั้นสูง Dr. Anakkapon Saenthon เรื่อง ทบทวนการเขียนโปรแกรมภาษาซี #2 (ชนิดตัวแปร พอยน์เตอร์ อาร์เร ประโยคควบคุม ฟังก์ชัน การส่งผ่านพารามิเตอร์)

ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

ADVANCED COMPUTER PROGRAMMINGการเขยนโปรแกรมคอมพวเตอรขนสง

Dr. Anakkapon Saenthon

เรอง ทบทวนการเขยนโปรแกรมภาษาซ #2

(ชนดตวแปร พอยนเตอร อารเร ประโยคควบคม ฟงกชน การสงผานพารามเตอร)

Page 2: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

การเขยน Flowchart เบองตนเราจะใชสญลกษณดงตอไปนคอ

จดเรมตน/สนสด (Terminator)

ขอมล นาเขา/สงออก (Input / Output)

ประมวลผล (Process)

ตดสนใจ (Decision)

ทศทาง (Direction)

จดตอเชอม (Connector)

Page 3: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

การเขยน Flowchart แบบโครงสราง

การเขยน Flowchart แบบโครงสรางมประโยชนคอทาใหการไลขนตอนการ

ทางานทาไดงายและเปนระเบยบ ซงมหลกการเขยนอย 3 ขอ คอ

a) Sequence การทางานตามลาดบ

b) Selection การเลอกการทางาน (if , switch)

c) Iteration การทาซา (for , while , do while)

Page 4: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

a) Sequence

YesNo

b) Selection

c) Iteration

Page 5: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

1 + 3 + 5 +7 + 9 + 11 + 13 +

15 + 17 + 19 + 21 + 23 + 25

+27 + 29 = ???

ตวอยาง จงเขยน Flowchart หาผลรวม

ของเลขจานวนค ตงแต 1 ถง 30

Yes

START

X = 1, TOTAL = 0

TOTAL = TOTAL + X

X > 30

X = X + 2

No

Print TOTAL

STOP

Page 6: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

จงเขยน Flowchart หาผลรวมของเลขจานวนค ตงแต 1 ถง 30

1Assignment

Page 7: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

3 + 5 + 6 + 9 + 10 + 12 +

15 + 18 + 20 + 21 + 24 +

25 + 27 + 30 = ???

ตวอยาง จงเขยน Flowchart หาผลรวมบวก

ของเลขทหารดวย 3 หรอ 5 หารลงตวตงแต

1 ถง 30

Yes

START

TOTAL = TOTAL + X

X = X + 1

No

STOP

Print TOTAL

X = 1, TOTAL = 0

X > 30

Yes

No

if ((X%3 == 0)

or (X%5 == 0))

Page 8: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

ตวอยาง จงเขยน Flowchart หาผลรวมของเลขทหารดวย 3 และ 5 หารลงตว

ตงแต 1 ถง 30

TOTAL = TOTAL + X

If (X%3 == 0)

If (X%5 == 0) TOTAL = TOTAL + X

Yes

No

No

Yes

Page 9: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

จงเขยน Flowchart หาผลรวมของเลขทหารดวย 3, 5 หรอ 7 หารลงตว

ตงแต 1 ถง 50

2Assignment

Page 10: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

ยกตวอยาง 1

ตวแปรชอ X[1]

X[1] = 3

ตวอยาง กาหนดตวแปรแบบ Array สาหรบเกบคาตวเลขจานวนเตม

ยกตวอยาง 2

ตวแปรชอ X[3]

X[1] = 10

X[2] = 2

X[3] = 9

ยกตวอยาง 3

ตวแปรชอ X[5]

X[1] = 7

X[2] = 5

X[3] = 4

X[4] = 1

X[5] = 9

Page 11: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Flowchart

Array

ตวอยาง จงเขยน Flowchart สาหรบรบคา

ตวเลขจาก Keyboard ทงหมด 5 จานวน

Yes

START

No

STOP

declare X[5] , N = 1

N > 5

Read X[N]

N = N+ 1

Page 12: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

ตวอยาง จงเขยน Flowchart กอนหนา และเมอรบคา

ครบแลวใหแสดงผลลพทตวเลขแตละตวตามลาดบ

Yes

START

No

Declare X[5] , N = 1

N > 5

Read X[N]

N = N+ 1

1

STOP

1

N = 1

Display X[N]

N > 5

N = N+ 1

Flowchart

Array

Yes

No

Page 13: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

ตวอยาง จงเขยน Flowchart รบคาตวเลข

จานวนเตมแบบ Array จานวน 5 ตวเลขและ

sort คาตวเลขจาก “นอยไปมาก”

Yes

START

No

Declare X[5] , N = 1

N > 5

N = N+ 1

1

Flowchart

Array

Read X[N]

Page 14: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Yes

STOP

2

N = 1

Display X[N]

N > 5

N = N+ 1

Yes

No

Flowchart

Array1

Yes

No

2

N = N+ 1

N = 1 , M = 0 ,W = 1

if X[N] > X[N+1]

X[N] = X[N+1] , X[N+1] = M

M = X[N]

No

N > 4

W > 4

Yes

W= W+ 1

No

N=1

Page 15: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

จงเขยน Flowchart รบคาตวเลขจานวนเตมแบบ Array จานวน 20 ตวเลขและ

sort คาตวเลขจาก “มากไปนอย”

3Assignment

4

จงเขยน “Pseudo code” ขนตอนการทางานจาก Assignment ขอ 1 - 3

Page 16: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

การเขยนโปรแกรมการเขยนโปรแกรมเบองเบองตนตน

Visual Visual .Net.Net C#C#

Page 17: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Overview

1. Introduction about Visual C#

2. โครงสรางของโปรแกรม

3. การกาหนดตวแปรและขอมล

4. ประเภทของขอมลในภาษา C#

5. ตวอยางการเขยนโปรแกรมอยางงาย

Page 18: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

18

1. Introduction about Visual C#

• ภาษา C# เปนภาษาโปรแกรมเชงวตถ (object-oriented

programming language) ทถกพฒนาขนมาโดยบรษทไมโครซอฟต

• เปนภาษาใหมทมประสทธภาพการทางานเทยบเทาหรอเหนอกวา C++

แตไมยงยากและซบซอนเทา

• โดยสามารถใชงานไดงายเหมอนภาษา Visual Basic ทาใหสามารถพฒนา

แอพพลเคชนในระดบสงไดดยงกวาการใชภาษา Visual Basic

Page 19: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

19

Visual Studio 2010

Double

Click

Page 20: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

1. สวนประกอบหนาตางโปรแกรม

20

Page 21: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

21

Windows Windows

FormsForms

Console Console

ApplicationApplicationVisual C#Visual C#

Page 22: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

22

Menu barToolbar Toolbox

Solution

ExplorerForm design

Page 23: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

23

Form code

Page 24: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

IDE (Integrated Development Environment)

• IDE – Integrated Development Environment คอ สภาพของการพฒนาโปรแกรมโดยรวมทง Editor , Complier , Debugger ตลอดจนเครองมอทใชในการออกแบบ และตดตอฐานขอมล ประกอบดวยสวนตางๆ ดงน

• เมนบาร (Menu Bar) : สวนทใชเกบคาสง โดยแบงแยกเปนหมวดหมอยางชดเจน

• ทลบาร (Toolbar) :สวนทใชเกบปมคาสงลดตางๆ

• ทลบอกซ (Toolbox): สวนทใชเกบคอนโทรล/คอมโพเนนตเพอการสรางแอพพลเคชน

• Form Designer : สวนทใชในการออกแบบหนาตาของแอพพลเคชน

• Properties Window : สวนทใชกาหนดคณสมบตของ Object และ Control ชนดตางๆ

• Solution Explorer : สวนทใชเกบองคประกอบตางๆ ของSolution (Solution จะประกอบไปดวยไฟลชนดตางๆ ทจาเปนตอการทางานและควบคมแอพพลเคชน)

• Code Editor : สวนทเราใชเขยนโปรแกรมเพอสงงานแอพพลเคชน

Page 25: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

ตวอยางการสรางแอพพลเคชนแบบ Console

• แอพพลเคชนแบบ Console คอ การแสดงผลการทางานในโหมดของดอส ซงรบ

คาสงดวยการพมพคาสง

• ตวอยาง

Page 26: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

Dr. Anakkapon Saenthon (30/11/2555) 26

ตวอยางการสรางแอพพลเคชนแบบ Windows Application

• แอพพลเคชนแบบ Windows Application คอ การรนโปรแกรมบน

ระบบปฏบตการ Windows

• ตวอยาง

Page 27: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

2. โครงสรางของโปรแกรม Visual C#

namespace MyProgram {

class MyProgramClass {

static void Main () {

System.Console.WriteLine(“My program");

System.Console.ReadLine();

}

}

}

รปแบบ Class <Identifier> {…….}

• method Main

• method จะตองอยใน class

• class จะตองอยใน namespace

Page 28: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

28

2. โครงสรางของโปรแกรม Visual C#

Separators

ตวแบงแยก อาจเปนสญลกษณหรอตวอกษร ใชสาหรบจดกลมคาหรอแบงแยกคา เชน ในโปรแกรมภาษา C# ใช

1) { } ใชจดกลมบลอก

2) ( ) ตอทาย method หรอ Functionใชสาหรบใสพารามเตอร

3) [ ] ใชระบอารเรย

4) ; ใชระบ จบคาสง (end of statement)

5) , ใชคนระหวางตวแปร

6) . ใชแยกชอออบเจกต

Page 29: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

• โครงสรางของโปรแกรม C#

โปรแกรมจะประกอบดวยหลาย namespaces

Namespace ประกอบดวยหลาย classes

class ประกอบดวยหลาย methods

methodmethod11methodmethod22

methodmethod22

namespacenamespace

ClassClass

ClassClass

2. โครงสรางของโปรแกรม Visual C#

Page 30: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

30

Class Class NameNameClass Class NameName

Declaration Declaration part part

StatementsStatementsStatementsStatements

Namespace Namespace NameNameNamespace Namespace NameName

2. โครงสรางของโปรแกรม Visual C#

Page 31: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

31

ประเภทของขอมลในภาษา C#

สาหรบภาษา C# สามารถแบงกลมประเภท ได 3 กลมดงน

1. Value types

2. References types

3. Pointer types

Page 32: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

32

3 การกาหนดตวแปรและขอมล

ตวแปร(Variable) หมายถง สญลกษณทเราใชแทนขอมลชนด

ตางๆ โดยขอมลทจะนามาเกบในตวแปรตองตรงกบทเราไดกาหนดไว

การจะนาขอมลไปใชงานกตองกระทาผานตวแปรน จาเปนตองระบ

ลงไปดวยวาตวแปรนนใชเกบขอมลชนดใด

Page 33: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

33

3.1 หลกการตงชอตวแปร

หามขนตนดวยตวอกษร, , underscore (_) หรอ @

หามใชตวเลขหรออกขระเปนตวเรมตน

รปแบบตวอกษรพมพตางกน ถอเปนคนละตว

(case sensitive) เชน myvar, myVar, MYVAR ถอเปนคนละตว

หามตงชอตวแปรซากบคาสงวน (reserved word)

ตงไดไมเกน 63 ตวอกษร

ตวอยางการตงชอทถกตอง

Num, myNum1, string4, Data

ตวอยางการตงชอทไมถกตอง

9xx, @myWeb, Look@me

Page 34: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

34

3.2 ตวดาเนนการทางคณตศาสตร (operator)

• Arithmetic Operators

+ - * / %

++ --

= += -= *= /= %=

• String Operators

+

• Boolean Operators

< <= > >= == !=

! && || ^

A = 2+3; B = 4 % 3;

X++; ++X; X--; --X;

Y += 3;

Message = "Hello "+”Name”

If (A=5 && B>6) {…}

Page 35: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

35

3.3 นพจนทางคณตศาสตร (operator)

• Operators

I. + - * /

II. % (remainder after division)

• Example

I. 11 + 5 16

II. 11 / 2 5.5

III. 11 % 2 1

IV. 5.0 % 2.2 0.6

Page 36: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

36

3.4 ลาดบความสาคญของ Operators

ลาดบ Operator

1 ( ), x++, x--

2 +x, -x, ++x, --x, !

3 *, /, %

4 +, -

5 shift bits left: <<, shift bits right: >>

6 <, <=, >, >=, is, as

7 = =, !=

8 &, |, ^

9 &&, ||, ?:

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

Page 37: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

37

3.5 การประกาศตวแปร (Variable)

วธ1 [ชนดของขอมล] ชอตวแปร;

วธ2 [ชนดของขอมล] ชอตวแปร = [คาเรมตนของตวแปร];

int x; int x =1;

int y, z;

int Y, Z = 3;

Double d = 10.99;

String s1 = “Visual", s2=“C#” , s3=“.Net”;

หมายเหต: ไมสามารถประกาศตวแปรซาภายในบลอก {…} เดยวกน

Page 38: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

38

3.6 การประกาศคาคงท (Constant)

ตวอยาง

const int x = 1;

const double pi = 3.14;

const [ชนดของขอมล] ชอตวแปร = คาคงท;

คาคงทเปนตวแปรทกาหนดคาตายตว ไมสามารถเปลยนแปลงได

Page 39: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

39

4. ประเภทของขอมลในภาษา C#

สาหรบภาษา C# สามารถแบงกลมประเภท ได 3 กลม ดงน

1. Value types

2. References types

3. Pointer types

Page 40: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

40

Value types ตวแปรของกลมนเปนประเภททใชขอมลโดยตรง

จะเปลยนแปลงคาเมอมคาใหมไปเกบทบคาเดม และจะถกทาลายเมออยนอกขอบเขต

ชนดขอมลในกลมประเภทน คอ sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, bool และ decimal

4. ประเภทของขอมลในภาษา C#

Page 41: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

41

4.1 ชนดของขอมล

I. Numeric (เลขจานวนเตม และเลขทศนยม)

II. Char (ตวอกษร)

III. String (ขอความ)

IV. Boolean (บลน)

V. Object (วตถ)

Page 42: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

42

4.2 เลขจานวนเตม

Data type ขนาด คาของขอมล

sbyte (System.SByte) 1 byte -128 ถง 127

short (System.Int16) 2 bytes -32,768 ถง 32,767

int (System.Int32) 4 bytes -2,147,483,648 ถง

2,147,483,647

long (System.Int64) 8 bytes -263 ถง (263 – 1)

Page 43: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

43

4.2.1 เลขจานวนเตมบวก

Data type ขนาด คาของขอมล

byte (System.Byte) 1 byte 0 ถง 255

ushort (System.UInt16) 2 bytes 0 ถง 65,535

uint (System.UInt32) 4 bytes 0 ถง 4,294,967,295

ulong (System.UInt64) 8 bytes 0 ถง 264 -1

Page 44: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

44

4.3 เลขทศนยม

Data type ขนาด คาของขอมล

float (System.Single) 4 bytes ±1.5 x 10-45 ถง ±3.4 x 1038

ความแมนยาของทศนยมอยท 7 ตาแหนง

double

(System.Double)

8 bytes ±5.0 x 10-324 ถง ±1.7 x 10308

ความแมนยาของทศนยมอยท 15 ตาแหนง, มชวงของขอมลกวางทสด

decimal

(System.Decimal)

16 bytes ±1.0 x 10-28 ถง ±7.9 x 1028

ความแมนยาของทศนยมอยท 28 ตาแหนง, ชวงขอมลแคบกวา double

แตใหคาละเอยดมากในสวนของทศนยมเหมาะกบการคานวณเรองเงน

Page 45: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

45

4.4 ชนดขอมลอกขระ

Data type ขนาด คาของขอมล

char

(System.Char)

2 bytes ตวอกษรแบบ Unicode มเครองหมาย '

(single quote) ครอมตวอกษร เชน 'A',

'1‘

char c = ‘A’;

string

(System.String)

ไมแนนอน ตวอกษรแบบ Unicode หลายตวมา

รวมกน มเครองหมาย " (double

quote) ครอม

เชน "Hello“

string s = “Welcome”;

Page 46: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

46

4.5 ขอมลชนดบลน

Data type ขนาด คาของขอมล

bool

(System.Boolean)

1 bit มคาทเปนไปได 2 คา คอ

true และ false

นามาใชกรณเกยวกบการเลอกโดย

พจารณาเงอนไข

เชน

bool bfact;

bfact = true; หรอ

bool bfact = true;

Page 47: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

55. . ตวอยางการเขยนโปรแกรมอยางงายตวอยางการเขยนโปรแกรมอยางงาย

47

Page 48: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

48

5. ตวอยางการเขยนโปรแกรมอยางงาย

1. เลอก

Create New project

Page 49: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

49

2. ตงชอ Project

1 เลอก Windows 1. เลอก Windows

Froms Application

3. Click

Page 50: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

1. การใชงานเครองมอ “TextBox”

50

Page 51: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

การรบขอมลดวย TextBox

51

1. แสดงToolbox

2. คลกคางท

TextBox และ

ลากไปยง Form1

3. วางท 3. วางท

From1

Page 52: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

52

การกาหนดคณลกษณะของ TextBox

1. คลกขวาท

TextBox

2. เลอก

Properties

3. จะปรากฎหนาตาง

Properties

Page 53: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

53

การกาหนดคณลกษณะของ TextBox

กาหนดขอความท TextBox

“ทดลองพมพชอตวเอง”

กาหนดชอตวแปร

ชอ : textBox1 -> myTextBox

ทดลองแกคาพารามเตอร

(Name) และ Text

Page 54: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

54

การกาหนดคณลกษณะของ TextBox

1. คลก Run

2. จะปรากฎหนาตาง

โปรแกรมดงน

Page 55: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

55

การรบขอมลดวย Button

1. แสดงToolbox

2. คลกคางท

Button และลาก

ไปยง Form1

3. วางท 3. วางท

From1

Page 56: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

56

การกาหนดคณลกษณะของ Button

กาหนดขอความท

TextBox

“ทดลองพมพชอ

ตวเอง”

กาหนดชอตวแปร

button1-> BT1

Page 57: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

57

การรบสงงานผาน Button

จะทางานหลงจากคลก

button1

Goto Events

Double click @ ”Click”

Page 58: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

58

การโปรแกรมสงงานเมอมการ click button

เมอโปรแกรมเสรจใหทาการกด Run

เพมโคด

Page 59: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

59

กอน Click หลง Click

ผลการ Run

กอน Click หลง Click

Page 60: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

2. การใชงานเครองมอ “Label”Label”

60

Page 61: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

61

การใชงาน Label

1. แสดงToolbox

2. คลกคางท 2. คลกคางท

Button และลาก

ไปยง Form1

3. วางท 3. วางท

From1

Page 62: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

62

กาหนดคณสมบตของ Label

การกาหนดคณสมบตทาลกษณะเดยวกบ TaxtBox และ Button

กาหนดให

(Name) : score

Text : A

1. แสดง Label

Page 63: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

3. การแปลงตวแปลขอมล

((String String --> Integer> Integer) ) or or ((IntegerInteger-->String >String ))

63

Page 64: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

64

ทดลองเขยนโปรแกรมคานวณพนทสเหลยม

เงอนไข

I. รบ Input จาก 2 TextBox

II. ทางานเมอกดปม Button

III. แสดงผลคาพนทใน Label

กาหนดคณสมบต

TextBox1 (Name) TB1

TextBox2 (Name) TB2

Button1 (Name) BT1

Labal1 (Name) LB1

Labal1 Text Area

Page 65: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

65

การรบขอมลจาก TextBox + Button+ Label

ประกาศตวแปร

String เปน Integer

คาสงแปลงขอมลจาก

String เปน Integer

อานขอมล Text จาก TextBox (TB1)อานขอมล Text จาก TextBox (TB1)

อานขอมล Text จาก TextBox (TB2)อานขอมล Text จาก TextBox (TB2)

คานวนคาพนทคานวนคาพนท

แปลงขอมลจาก Integer เปน Stringแปลงขอมลจาก Integer เปน String

Page 66: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

4. การตรวจสอบเงอนไข IF ()IF ()

ELSE ELSE

66

Page 67: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

67

tb1

tb2

หนาตางโปรแกรมสาหรบขอมล

และแสดงผล

Page 68: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

68

คาสงแปลงขอมลจาก

String เปน Integer

อานขอมล Text จาก TextBox (tb1)

ตวอยางการเชคเงอนไข

If-else

Page 69: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

5. การทาซา

For loopFor loop

69

Page 70: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

70

5. การทาซา

1. เรมตน [0]

2. เงอนไขจดสนสด [10]

3. การเลอนการทาซา [+1]

Page 71: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

1. จงเขยนโปรแกรมเพอคานวณและแสดงผลคา A ออกทาง Label เมอ

กาหนดให A = 2B + 3C – D (ใช TextBox 3 ตวเพอรบคา Input)

2. จงเขยนโปรแกรมการหาพนทวงกลม ทรบคารศมจากแปนพมพแลว

แสดงผลลพธทางหนาจอ Label (ใช TextBox 1 ตวเพอรบคา Input )

Assignment#21-2

71

Page 72: ADVANCED COMPUTER PROGRAMMING ADVANCE COMPUTER PROGRAMMIN… · เรื่อง ทบทวนการเขียนโปรแกรมภาษาซ ี #2 ... c) Iteration

จงเขยนโปรแกรมเพอเปรยบเทยบคาขอมลทเกบในตวแปร x (TextBox)

โดยมเงอนไขดงน

ถา x >0 ใหแสดงผลเปน Text คาวา “Positive Number”

ถา x <0 ใหแสดงผลเปน Text คาวา “Negative Number”

ถา x =0 ใหแสดงผลเปน Text คาวา “Zero Number”

***ทาการคานวณเมอกด Button และผลลพธแสดงออกทาง TextBox

3 Assignment#2

72