variable declaration & constant
TRANSCRIPT
LOGO
Variable Declaration &
Constant
Variable Declaration &
Constant
CHAPTER 5
อาจารย์�ปรเมษฐ์� ดำ าชู�คณะวิ�ทย์าการจ�ดำการ โปรแกรม
คอมพิ�วิเตอร�ธุ�รก�จ
สร างป"ญญา ศร�ทธุาควิามดำ%มหาวิ�ทย์าลั�ย์แห(ง
เม)องคนดำ%
1/16
BIZ Com ร�กษ�
ส�+งแวิดำลั อม
2
Variable DeclarationVariable Declaration การท%+เราจะใชู งานต�วิแปรในการเขี%ย์น
โปรแกรม จะเร�+มจากการประกาศต�วิแปร (Variable Declaration) ซึ่/+งก0ค)อ การต�1งชู)+อต�วิแปร แลัะก าหนดำชูน�ดำขี อม�ลัให ก�บต�วิแปรแต(ลัะต�วิ
DIM Variable-name
AS Data Type
ร�ปแบบ
DIM ย์(อมาจากค าวิ(า Dimension
3
DIM เป3นค าสงวินท%+หมาย์ถึ/ง การเร�+มต นขีองต�วิแปร ซึ่/+ง DIM ย์(อมาจากค าวิ(า Dimension
Variable-name ค)อต�วิแปรท%+ก าหนดำไวิ ในส(วินขีอง Input แลัะ Output การต�1งชู)+อต�วิแปรจะม%กฏเกณฑ์�ตามท%+ก าหนดำ
AS เป3นต�วิท%+ใชู แย์ก Variable –name ก�บ Data Type
Data Type ค)อชูน�ดำขีองขี อม�ลัเราจะต องก าหนดำให เหมาะสมก�บขี อม�ลัชูน�ดำน�1นๆ เชู(น Byte Integer Long String Boolean เป3นต น
4
Variable NameVariable Name
กฏเกณฑ์�ในการต�1งชู)+อให ก�บต�วิแปรใน Visual Basic 6.0 ต้�องขึ้��นต้�นด้�วยต้�วอ�กษรภาษาอ�งกฤษ A-Z
ต้�วอ�กษรต้�วถั�ด้ไปอาจจะเป�นA-Z หร�อต้�วเลขึ้ 0-9 หร�อ _
ต้�วอ�กษรต้�วสุ�ด้ท้�ายอาจจะเป�นเคร�"องหมายท้$"ใช้�แสุด้งถั�งประเภท้ขึ้องต้�วแปร ได้�แก( Integer(%) Long (&) single (!) Double (#) Currency (@) หร�ออาจจะไม(ม$ก)ได้�
ช้�"อขึ้องต้�วแปรจะต้�องไม(ซ้ำ+�าก�บค+าสุงวน(Reserved Word)
ต้�วอ�กษรต้�วพิ.มพิ/ใหญ่(และพิ.มพิ/เล)กถั�อว(าเป�นต้�วเด้$ยวก�น
5
การต�1งชู)+อแบบมาตรฐ์านจะม% 3 ชูน�ดำดำ วิย์ก�นค)อการต�1งชู)+อแบบมาตรฐ์านจะม% 3 ชูน�ดำดำ วิย์ก�นค)อ
CamelCase Notation หร)อ Medial Capitals เป3นการต�1งชู)+อต�วิแปรจะขี/1นต นดำ วิย์ต�วิเลั0ก แลัะต�วิอ�กษรขีองค าถึ�ดำไปจะขี/1นต นดำ วิย์ต�วิใหญ( backColor , iName , firstName
Hungarian Notation เป3นการต�1งชู)+อโดำย์ก าหนดำต�วิอ�กษรย์(อชูน�ดำขีองต�วิแปรท%+ใชู โดำย์ต�วิอ�กษรย์(อจะเป3นต�วิเลั0กแลัะน าหน าต�วิแปร lName , bCheck
6
การต�1งชู)+อแบบมาตรฐ์านจะม% 3 ชูน�ดำดำ วิย์ก�นค)อ (ต(อ)การต�1งชู)+อแบบมาตรฐ์านจะม% 3 ชูน�ดำดำ วิย์ก�นค)อ (ต(อ)
Pascal Notation ต�วิอ�กษรแรกขีองแต(ลัะค าจะเป3นต�วิใหญ(ส(วินต�วิอ�กษรอ)+น ๆ ท%+ไดำ ขี/1นต นค าน�1นก0เป3นต�วิเลั0ก เช้(น BackColor , NumberValue
7
บทกลัอนบทกลัอนอย์(าเอาต�วิเลัขีน าหน า อย์(าให มาตรงก�บค าสงวินอย์(าให ม%เคร)+องหมาย์ใดำๆลัอย์นวิลั ไม(สมควิรม%ชู(อง
วิ(างใดำๆๆต�วิพิ�มพิ�เลั0กพิ�มพิ�ใหญ(ม%ค(าเท(าก�น ท าย์ชู)+อต�วิแปรน�1น
เป3นส�ญลั�กษณ�ชูน�ดำขี อม�ลัดำ�ดำแปลัง จากน�ร�ธุ อ านวิย์ศ�ลัป9.เขี%ย์นโปรแกรมภาษา
ซึ่%.กร�งเทพิ: ดำวิงกมลัสม�ย์.2548.หน า49
8
ให กาเคร)+องหมาย์ หน าขี อท%+ต�1งชู)+อไดำ ถึ�ก แลัะกาหน าขี อท%+ต�1งชู)+อต�วิแปรผิ�ดำ พิร อมบอกดำ วิย์วิ(าผิ�ดำตรงไหน
1. Age ถึ�ก ผิ�ดำ ................................
2. Grade2 ถึ�ก ผิ�ดำ ................................
3. 1ch ถึ�ก ผิ�ดำ ................................
4. SRU ถึ�ก ผิ�ดำ ................................
5. IF ถึ�ก ผิ�ดำ ................................
6. AS ถึ�ก ผิ�ดำ ................................
ขี/1นต นดำ วิย์ต�วิเลัขี
เป3นค าสงวิน
9
ระดำ�บคะแนนระดำ�บคะแนนถึ าตอบไดำ ถึ�กหมดำเลัย์แสดำงวิ(า
ขีองเขีาดำ%จร�ง ๆถึ าตอบผิ�ดำ 2 ขี อ Work
มาก ๆ คร�บถึ าถึ�กคร/+งหน/+ง อ)ม 3 ดำาวิ ถึ าไม(ถึ�กเลัย์ โอ โห E ลัอย์
มาแลั วิ
10
7. Net price ถึ�ก ผิ�ดำ ........................
8. Grade-2 ถึ�ก ผิ�ดำ ........................
9. 100-E ถึ�ก ผิ�ดำ ........................
10.Biz-com ถึ�ก ผิ�ดำ ........................
11.Black Berry ถึ�ก ผิ�ดำ ........................
12. BOOM^ ถึ�ก ผิ�ดำ ........................
11
ต�วิอย์(างต�วิอย์(างให น�กศ/กษาประกาศต�วิแปรขีองเง�นเดำ)อนเก0บขี อม�ลัชูน�ดำเลัขีจ านวินเต0ม DIM Salary As
Integerให น�กศ/กษาประกาศต�วิแปรขีองเกรดำเฉลั%+ย์โดำย์ เก0บขี อม�ลัชูน�ดำเลัขี จ านวินจร�ง
DIM Grade As Singleให น�กศ/กษาประกาศต�วิแปรชู)+อขีองน�กศ/กษา
DIM Name As String
------------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
12
ต�วิอย์(างต�วิอย์(างให น�กศ/กษาประกาศต�วิแปรขีองอ�ตราส(วินลัดำ
DIM Discount_Rate As Singleให น�กศ/กษาประกาศต�วิแปรขีองบ านเลัขีท%+
DIM Grade As String
ให น�กศ/กษาประกาศต�วิแปรผิลัการเร%ย์น เชู(น A ,B+ DIM Grade As String
------------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
13
จาก Flowchart ต้(อไปน$�ให�ประกาศต้�วแปรจาก Flowchart ต้(อไปน$�ให�ประกาศต้�วแปร
START
Price , Amount
day Total Price = Price * Amount day Discount = Total Price * (10/100)
1
1
Discount ,Total Price
Net Price = Total Price - Discount
Net Price
STOP
ต�วิแปรอย์�(น%1
ต�วิแปรอย์�(น%1
14
จาก Flowchart ต้(อไปน$�ให�ประกาศต้�วแปรจาก Flowchart ต้(อไปน$�ให�ประกาศต้�วแปร
Price , Amount
day DIM Price As Integer DIM Amount_day As Integer
น ามาจากส�ญลั�กษณ�ขีองการร�บค(า
15
Price Amount_day
Integer Integer
Memory (พิ)1นท%+หน(วิย์ควิามจ า)
Null
Null
16
Discount ,Total Price
Net Price
DIM Discount As SingleDIM Total_price As SingleDIM Net_price As Single
จะก าหนดำขี อม�ลัชูน�ดำใดำให ดำ�ท%+ Process
Output
17
Discount Total_price
Single Single
Memory (พิ)1นท%+หน(วิย์ควิามจ า)
Null
Null
Net_price
Single
18
ConstantConstant
ส าหร�บค(าคงท%+ท%+ใชู งานใน Visual Basic น�1นแบ(งไดำ เป3น 2 ประเภทดำ�งน%1 ค(าคงท้$"แบบ User Defined ค(าคงท้$"แบบ Pre –Defined
19
ค(าคงท%+แบบ User Definedค(าคงท%+แบบ User Defined
เป3นค(าคงท%+ท%+เราเป3นผิ� ก าหนดำเอง เป3นค(าคงท%+ท%+ใชู เฉพิาะในApplication ขีองเรา โดำย์ใชู ค าส�+ง Const ประกาศค(าคงท%+CONST ชู)+อค(าคงท%+ As ชูน�ดำขี อม�ลั
=ค(าคงท%+น�1น
20
ค(าคงท%+แบบ Pre –Defined ค(าคงท%+แบบ Pre –Defined
เป3นค(าคงท%+ท%+ Visual Basic ไดำ ก าหนดำค(าไวิ แลั วิ เราสามารถึน ามาใชู ไดำ ท�นท% (เราไม(ต องประกาศค(า)
21
การ assignment (ส(วินหน/+งขีอง Process)การ assignment (ส(วินหน/+งขีอง Process)
Assignment เป3นการก าหนดำค(าให ก�บต�วิแปร ซึ่/+ง ค(าท%+ก าหนดำน�1นอาจจะเป3นไดำ ท�1งค(าหร)อต�วิแปรก0ไดำ ดำ�งร�ปแบบต(อไปน%1
Variable-Name = ค(าต(าง ๆ หร)อ ต�วิแปร
ควิามหมาย์ ค)อน าขี อม�ลัดำ านขีวิาม)อไปไวิ ในต�วิแปรทางซึ่ าย์ม)อ
อย์(าลั)มประการต�วิแปรต�วิน%1ดำ วิย์
22
ต�วิอย์(าง ต�วิอย์(าง
ต�วิอย์(าง ให ประกาศต�วิแปร เพิ)+อเก0บค(าขีองคะแนนน�กศ/กษา
DIM Score As Single Score
Score = 2.0
2. 0
Score
Score = 10Score = 4.0
23
ปกต�เราม�กจะเลั)อกชูน�ดำขี อม�ลัให เหมาะสมก�บงาน แต(ถึ าเราไม(ไดำ เลั)อกไวิ ลั(วิงหน า Visual Basic เองจะต�ดำส�นใจเองวิ(าจะเก0บขี อม�ลัท%+เป3น Variant แบบใดำ โดำย์พิ�จารณาจากขี อม�ลัท%+จะเก0บ หร)อย์/ดำสภาวิะรอบขี างในการต�ดำส�นใจ (Context Decision) วิ(าเป3นแบบใดำ
24
Exp1Exp1
ให น�กศ/กษาเขี%ย์นผิ�งงานในการค านวิณหาค(าเชู(าโรงแรมแห(งหน/+งในจ�งหวิ�ดำส�ราษฏร�ธุาน% ลั�กค าท�กคนไดำ ร�บส(วินลัดำ 10 % จากค(าเชู(าท�1งหมดำ โดำย์ให ร�บขี อม�ลัทางแป>นพิ�มพิ� แลัะแสดำงผิลัส(วินลัดำท%+ไดำ ร�บออกทางจอภาพิ แลัะเง�นค(าเชู(าท%+ต องชู าระออกทางเคร)+องพิ�มพิ� ให�ว.เคราะห/ขึ้�อม2ลประกอบด้�วย
• INPUT• PROCESS• OUTPUT
ให�สุร�างผั�งงาน (Flowchart) ให�เขึ้$ยนAlgorithm
ให�เขึ้$ยน Pseudo Code
25
เฉลัย์การสร างผิ�งงาน เฉลัย์การสร างผิ�งงาน
START
Price , Amount
day Total Price = Price * Amount day Discount = Total Price * (10/100)
1
1
Discount
Net Price = Total Price - Discount
Net Price
STOP
26
เฉลัย์การวิ�เคราะห�ขี อม�ลั เฉลัย์การวิ�เคราะห�ขี อม�ลัINPUT
ราคาห�องพิ�ก (Price) ขึ้�อม2ลช้น.ด้ Single จ+านวนค�นท้$"พิ�ก (Amount Day) ขึ้�อม2ลช้น.ด้
IntegerPROCESS
ค(าห�องพิ�ก = Price * Amount Day สุ(วนลด้ = ค(าห�องพิ�ก *(10/100) ราคาสุ�ท้ธิ. = ค(าห�องพิ�ก สุ(วนลด้–
OUTPUT สุ(วนลด้ (Discount) ขึ้�อม2ลช้น.ด้ single ราคาสุ�ท้ธิ. (Net Price) ขึ้�อม2ลช้จ.ด้ Single
27
AlgorithmAlgorithm
1 .เร�+มต น2. ร�บค(า ราคาห องพิ�ก 3. ร�บค(า จ านวินค)นท%+พิ�ก4. ค(าห องพิ�ก = จ านวินค)นท%+พิ�ก * จ านวินค)น
ท%+พิ�ก5. ส(วินลัดำ = ค(าห องพิ�ก *(10/100)6. ราคาส�ทธุ� = ค(าห องพิ�ก ส(วินลัดำ–7. แสดำงค(า ขีองส(วินลัดำ8. แสดำงค(า ราคาส�ทธุ�9. จบการท างาน
28
Pseudo CodePseudo Code
Begin Input Price Input Amount dayTotal Price= Price * Amount Day Discount = Total Price *(10/100)Net price = Total Price – Discount Display Discount print Net price
End
29
EXP2EXP2
ให น�กศ/กษาเขี%ย์นโปแกรมเพิ)+อค านวิณหาอ�ตราก าไรโดำย์ขี อม�ลัท%+ร�บเขี ามาประมวิลัผิลัทางแป>นพิ�มพิ� ไดำ แก( ราคาขีาย์ต(อหน(วิย์ แลัะต นท�นผิ�นแปร ส าหร�บส�ตรท%+ใชู หาอ�ตราก าไรส(วินเก�น ม%ดำ�งน%1 อ�ต้ราก+าไรสุ(วนเก.น =((ราคาขึ้ายต้(อหน(วย –
ต้�นท้�นผั�นแปรต้(อหน(วย)-ราคาขึ้ายต้(อหน(วย)*100
ก+าหนด้ให�แสุด้งผัลอ�ต้ราก+าไรสุ(วนเก.นออกท้างจอภาพิ
ให�ว.เคราะห/ Input Process Outputให�สุร�างผั�งงาน ให�เขึ้$ยนAlgorithm ให�เขึ้$ยน Pseudo Code
30
EXP3EXP3
ก าหนดำให x = 10 ,y=20 ,z=2 จงเขี%ย์นโปรแกรมเพิ)+อหาค(าเฉลั%+ย์ขีองX , y , z ให�ว.เคราะห/ขึ้�อม2ล Input Process Output
ให�สุร�างผั�งงาน ให�เขึ้$ยนAlgorithm ให�เขึ้$ยน Pseudo Code
31
EXP4EXP4
ให น าเง�นเดำ)อนขีองพิน�กงาน เขี าเคร)+องคอมพิ�วิเตอร�แลั วิให เพิ�+มเง�นเดำ)อนขีองพิน�กงานอ%ก 10% ขีองเง�นเดำ)อนเดำ�ม แลั วิให แสดำงผิลัขีองเง�นเดำ)อนท%+เพิ�+มขี/1น(10%)แลัะเง�นเดำ)อนรวิมท�1งหมดำ ให�ว.เคราะห/ขึ้�อม2ล Input Process Output
ให�สุร�างผั�งงาน ให�เขึ้$ยนAlgorithm ให�เขึ้$ยน Pseudo Code
32
ค�ณธุรรม จร�ย์ธุรรมค�ณธุรรม จร�ย์ธุรรม
สร างป"ญญา
สร างป"ญญา
มหาวิ�ทย์าลั�ย์แห(งเม)องคนดำ%
33
LOGO สร างป"ญญาศร�ทธุาควิามดำ%