variable constant math

27
Variable, Constant, Math สสสสสสสสสส สสสสสสสสสสสสสส

Upload: -

Post on 25-Jun-2015

2.262 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Variable Constant Math

Variable, Constant, Math

สำ��นั�กวิ�ช�สำ�รสำนัเทศศ�สำตร�

Page 2: Variable Constant Math

Company Logo

วิ�นันั��เร�ยนั

ต�วิแปร1

ค่��ค่งท��2

เค่ร��องหม�ยดำ��เนั�นัก�ร

3

ฟั งก�ช�นัท�งค่ณิ�ตศ�สำตร� 4

Page 3: Variable Constant Math

Company Logo

ตั�วแปร (Variable)

ต�วิแปร ค่�อ ก�รต��งช��อเร�ยกหนั�วิยค่วิ�มจำ��ท��เร�จำองพื้��นัท��ไวิ% สำ��หร�บเก'บข้%อม)ลท��ต%องใช%ในัก�รท��ง�นัข้องโปรแกรม สำ�งผลให%สำ�ม�รถเร�ยกใช%ง�นัพื้��นัท��นั��นัๆ ในัหนั�วิยค่วิ�มจำ��ไดำ%โดำยง��ย ดำ%วิยก�รเร�ยกผ��นัช��อต�วิแปรท��เร�ต��งข้0�นั

Page 4: Variable Constant Math

Company Logo

กฎการตั��งชื่��อตั�วแปร

ต��งช��อให%สำ��อถ0งค่วิ�มหม�ยข้องข้%อม)ลท��ต%องก�รจำ�ดำเก'บ และใช%อ�กข้ระภ�ษ�อ�งกฤษเท��นั��นั

ช��อต%องไม�เหม�อนัก�บค่�ย�เวิ�ร�ดำ ค่�ย�เวิ�ร�ดำ ค่�อ ช��อท��ม�ค่วิ�มหม�ยและวิ�ธี�ก�รใช%ง�นัท��

แนั�นัอนั เช�นั char, int เป6นัต%นั อ��นัๆ ดำ)ในัเอกสำ�ร m-learning

ช��อม�ค่วิ�มย�วิไม�จำ��ก�ดำ แต�ค่อมไพื้เลอร�จำะร)%ค่วิ�มแตกต��งข้องแต�ละช��อไดำ%เฉพื้�ะ 32 อ�กษรแรกเท��นั��นั

Page 5: Variable Constant Math

Company Logo

กฎการตั��งชื่��อตั�วแปร

อ�กษรแรกข้องช��อต%องเป6นัอ�กษร ค่�อ A ถ0ง Z หร�อ a ถ0ง z หร�อเค่ร��องหม�ย_

(ข้�ดำเสำ%นัใต%) เท��นั��นั ภ�ยในัช��อห%�มม�ก�รเวิ%นัช�องวิ��ง หร�อใช%สำ�ญล�กษณิ�อ��นันัอกเหนั�อ

จำ�ก A ถ0ง Z

หร�อ a ถ0ง z หร�อเค่ร��องหม�ย_(ข้�ดำเสำ%นัใต%) และต�วิเลข้ เท��นั��นั อ�กษรต�วิพื้�มพื้�ใหญ�และต�วิพื้�มพื้�เล'ก ค่อมไพื้เลอร�จำะถ�อวิ��ม�ค่วิ�ม

แตกต��งก�นั เช�นั Num1 ก�บ num1 จำะเป6นัช��อท��ไม�เหม�อนัก�นั

Page 6: Variable Constant Math

Company Logo

แบบฝึ�กหั�ด 1: ทดสอบความเข้�าใจในการตั��งชื่��อตั�วแปร

พื้�จำ�รณิ�ช��อข้องต�วิแปรดำ%�นัล��งนั�� แล%วิตอบวิ��เป6นัก�รต��งช��อท��ผ�ดำหร�อถ)ก

และถ%�บอกเหต9ผลในัก�รต��งช��อผ�ดำ และแก%ให%ถ)ก Gig Name1 Gig-Name1 1 GigName #GigName _GigName1 Gig%Name1 long Long

Page 7: Variable Constant Math

Company Logo

ร)ปแบบค่��สำ��งค่�อ ชนั�ดำข้องต�วิแปร ช��อต�วิแปร;

ต�วิอย��ง int num1; char name; float Long;

การสร�างตั�วแปรในภาษา C++

Text

Page 8: Variable Constant Math

Company Logo

ตั�วอย่#างการสร�างตั�วแปรในภาษา C++

โจำทย� : ต%องก�รพื้�มพื้�เค่ร��องหม�ยใดำๆ ออกท�งจำอภ�พื้ ต�วิแปรสำ��หร�บเก'บเค่ร��องหม�ย

เค่ร��องหม�ย ประกอบดำ%วิยอ�กข้ระเพื้�ยงต�วิเดำ�ยวิ (*, @,+) ดำ�งนั��นัค่วิรใช%ต�วิแปร char

สำร%�งต�วิแปรในัภ�ษ� C++ ไดำ%วิ�� char symbol;

ต�วิแปรสำ��หร�บเก'บจำ��นัวินัเค่ร��องหม�ยท��ผ)%ใช%ต%องก�รให%พื้�มพื้� จำ��นัวินัเค่ร��องหม�ย เป6นัจำ��นัวินันั�บ (ไม�ม�ค่��

ลบ,ทศนั�ยม) ดำ�งนั��นัค่วิรใช%ต�วิแปร int สำร%�งต�วิแปรในัภ�ษ� C++ ไดำ%วิ�� int value;

Page 9: Variable Constant Math

Company Logo

ข้%อสำ�งเกตในัก�รต��งช��อต�วิแปร

จำ�กโจำทย�ก�รห�พื้��นัท��สำ�มเหล��ยม เร�สำ�ม�รถสำร%�งต�วิแปรโดำยใช%ค่��สำ��งดำ�งนั�� แบบท�� 1 float invariant; float base; float height; float result;

แบบท�� 2 float invariant, base, height, result;

Page 10: Variable Constant Math

Company Logo

ค่��ค่งท�� (Constant)

ค่��ค่งท�� ค่�อค่��ท��เปล��ยนัแปลงไม�ไดำ%สำร%�งเพื้��อป:องก�นัม�ให%โปรแกรมแก%ไข้ค่��ร)ปแบบค่��สำ��งท��ใช%ค่�อ

const ชนั�ดำข้องต�วิแปร ช��อต�วิแปร = ค่��;

ต�วิอย��งconst float Pi = 3.1415;

Page 11: Variable Constant Math

Company Logo

ค่อนัสำแตนัต�ชนั�ดำอ�นัท�เจำอร� (interger constant)

แบ#งเป$น 3 ชื่น%ดค�อ Decimal integer constant

• ช9ดำต�วิเลข้ ต��งแต� 0 ถ0ง 9• เช�นั const int JanDay = 31;

Octal integer constant• ช9ดำต�วิเลข้ ต��งแต� 0 ถ0ง 7 และต%องข้0�นัต%นัดำ%วิย 0 เสำมอ• เช�นั const int Oct1 = 011;

Hexadecimal integer constant• ช9ดำต�วิเลข้ ต��งแต� 0 ถ0ง 9 และ A ถ0ง F• ต%องข้0�นัต%นัดำ%วิย 0X หร�อ 0x เสำมอ• เช�นั const int Hex1 = 0x21;

Page 12: Variable Constant Math

Company Logo

ค่อนัสำแตนัต�ชนั�ดำ float (float constant)

แบ�งเป6นั 2 สำ�วินั ค่�อ ช9ดำต�วิเลข้ ต��งแต� 0 ถ0ง 9 และทศนั�ยม

• เชื่#น const float Pi = 3.1425;

เลข้ยกก��ล�ง• ประกอบดำ%วิย 2 สำ�วินั ค่�อ

– ต�วิเลข้– ต�วิค่)ณิสำ�บยกก��ล�ง แสำดำงดำ%วิย E หร�อ e ต�มดำ%วิยเลข้

ยกก��ล�งซึ่0�งเป6นัอ�นัท�เจำอร�บวิกหร�อลบ

Page 13: Variable Constant Math

Company Logo

ค่อนัสำแตนัต�ชนั�ดำ float (float constant)

float constant แบบเลข้ยกก��ล�ง 1.const float num1 = 1.0E3 หม�ย

ถ0ง 1.0 * 103

2.const float num1 = 1.0E+2 หม�ยถ0ง 1.0 * 102

3.const float num1 = 1.0E-3 หม�ยถ0ง 1.0 * 10-3

4.const float num1 = 121.21e-3 หม�ยถ0ง 121.21 * 10-3

ต�วิอย��ง

Page 14: Variable Constant Math

Company Logo

ค่อนัสำแตนัต�ชนั�ดำอ�กษร (character constant)

Your Text

Your Text

เป6นัก�รก��หนัดำค่��ค่งท��ในัต�วิแปรแบบอ�กษร แบ�งออกเป6นั 2 แบบ ค่�อ การก&าหันดค#าคงท'�ใหั�ก�บตั�วแปรแบบอ�กษรท��วไป

• เชื่#น const char grad = ‘a’;

Escape sequence • ประกอบด�วย่เคร��องหัมาย่ \ และอ�กษรอย่+#ภาย่ในเคร��องหัมาย่ ‘ ’

เชื่#น– ‘\n’ แปลว#า ตั�องการข้,�นบรรท�ดใหัม#– ‘\r’ แปลว#า เหัม�อนการกด Enter– ‘\\’ แปลว#า ตั�องการแสดงเคร��องหัมาย่ \

• Escape sequence ท'�อย่+#ในข้�อความซึ่,�งอย่+#ในเคร��องหัมาย่ “ ” แล�วไม#จ&าเป$นตั�องใส# ‘ ’ เพิ่%�มเตั%มอ'ก เชื่#น “Hi\n”, “\nHello”, “\

nHello\n” เป$นตั�น

Page 15: Variable Constant Math

Company Logo

ค่อนัสำแตนัต�ชนั�ดำ string (string constant)

เป6นัช9ดำต�วิอ�กษรท��อย)�ภ�ยในัเค่ร��องหม�ย “ ” ซึ่0�งอ�จำจำะม�อ�กษรจำ��นัวินัม�กหร�อไม�ม�อ�กษรเลย เช�นั

“พื้��นัท��สำ�มเหล��ยมนั��เท��ก�บ”“”

ก�รเก'บข้%อม)ลในัหนั�วิยค่วิ�มจำ�� จำะเท��ก�บค่วิ�มย�วิข้อง string บวิก 1 ไบต� เพื้��อแสำดำงก�รจำบข้%อค่วิ�มนั��นั (เร�ยกรห�สำ ASCII NUL)

อ�กษร ‘A’ string “A”

A

A \0

Page 16: Variable Constant Math

Company Logo

แบบฝึ=กห�ดำ 2: ทดำสำอบค่วิ�มเข้%�ใจำเร��องค่��ค่งท��(Constant)

2000

2001

จำงเข้�ยนัค่��สำ��งเพื้��อสำร%�ง constant ดำ�งนั�� ต%องก�รสำร%�งต�วิแปรแบบ integer ฐ�นัสำ�บ เก'บ

ต�วิแปรท��ช��อวิ�� num1 โดำยก��หนัดำค่��ค่งท��ฐ�นัสำ�บเท��ก�บ 5

ต%องก�รสำร%�งต�วิแปรแบบ integer ฐ�นัแปดำ เก'บต�วิแปรท��ช��อวิ�� num1 โดำยก��หนัดำค่��ค่งท��ฐ�นัแปดำเท��ก�บ 34

ต%องก�รสำร%�งต�วิแปรแบบ integer ฐ�นัสำ�บหก เก'บต�วิแปรท��ช��อวิ�� num1 โดำยก��หนัดำค่��ค่งท��ฐ�นัสำ�บหกเท��ก�บ AF

Page 17: Variable Constant Math

Company Logo

แบบฝึ=กห�ดำ 2: ทดำสำอบค่วิ�มเข้%�ใจำเร��องค่��ค่งท��(Constant)

2000

2001

จงเข้'ย่นค&าส��งเพิ่��อสร�าง constant ด�งน'� 1. ตั�องการสร�างตั�วแปรแบบ float เก/บตั�วแปรท'�

ชื่��อว#า inva โดย่ก&าหันดค#าคงท'�เท#าก�บ 0.01 2. ตั�องการสร�างตั�วแปรแบบ float เก/บตั�วแปรท'�ชื่��อ

ว#า inva โดย่ก&าหันดค#าคงท'�เท#าก�บ 0.9 * 109

3. ตั�องการสร�างตั�วแปรแบบ float เก/บตั�วแปรท'�ชื่��อ ว#า inva โดย่ก&าหันดค#าคงท'�เท#าก�บ 0.001 *

10-6

Page 18: Variable Constant Math

Company Logo

เค่ร��องหม�ยดำ��เนั�นัก�รท�งค่ณิ�ตศ�สำตร�

แบ�งออกเป6นั3 ประเภท ค่�อ

การค&านวณทางคณ%ตัศาสตัร3 การด&าเน%นการทางตัรรกศาสตัร3 การเปร'ย่บเท'ย่บ

Page 19: Variable Constant Math

Company Logo

เค่ร��องหม�ยก�รค่��นัวิณิท�งค่ณิ�ตศ�สำตร�ก�รดำ��เนั�นั

ก�รเค่ร��องหม

�ยต�วิอย��งก�รใช%ง�นั ผลล�พื้

ธี�บวิก + เม��อ A =0 แล%วิ A = 1+2; A = 3

ลบ - เม��อ A =0 แล%วิ A = 2-1; A = 1

ค่)ณิ * เม��อ A =0 แล%วิ A = 2 * 1; A = 2

ห�ร / เม��อ A =0 แล%วิ A = 2/1; A = 2

ห�รเอ�เศษ % เม��อ A =0 แล%วิ A = 3%2; A = 1

Page 20: Variable Constant Math

Company Logo

เค่ร��องหม�ยก�รค่��นัวิณิท�งค่ณิ�ตศ�สำตร�ก�รดำ��เนั�นั

ก�รเค่ร��องหม

�ยต�วิอย��งก�รใช%ง�นั ผลล�พื้

ธี�เพื้��มค่��ท�ละ

หนั0�ง++ เม��อ A=0, c=1 แล%วิ A = ++c;

หร�อ A = c++;A = 2

ลดำค่��ท�ละหนั0�ง -- เม��อ A=0, c=1 แล%วิ A = --c; หร�อ A = c--;

A1= 0

บวิกแบบลดำร)ป

+= เม��อ A=0 แล%วิ A += 2; A = A+2;

A = 2

ลบแบบลดำร)ป -= เม��อ A=0 แล%วิ A -= 2; A = -2

ค่)ณิแบบลดำร)ป *= เม��อ A=1 แล%วิ A *= 2; A = 2

ห�รแบบลดำร)ป /= เม��อ A=1 แล%วิ A /= 2; A = 0.5

ห�รเอ�เศษแบบลดำร)ป

%= เม��อ A=3 แล%วิ A %=2; A =1

Page 21: Variable Constant Math

Company Logo

เค่ร��องหม�ยท�งตรรกศ�สำตร�

แบ#งเป$น 3 ประเภทค�อ

และ (and) ใช%สำ�ญล�กษณิ� && หร�อ (or) ใช%สำ�ญล�กษณิ� || ไม� (not) ใช%สำ�ญล�กษณิ� !

Page 22: Variable Constant Math

Company Logo

ต�วิอย��งผลล�พื้ธี�ท��ไดำ%จำ�กก�รดำ��เนั�นัก�รท�งตรรกศ�สำตร�

A B A && B

A || B

!A

T T T T FT F F T FF T F T TF F F F T

Page 23: Variable Constant Math

Company Logo

เค่ร��องหม�ยเปร�ยบเท�ยบ

ก��หนัดำให% เม��อ A=0, C=1 แล%วิการด&าเน%นการ เคร��องหัมาย่ ตั�วอย่#างการใชื่�งาน ผลล�พิ่ธ์3

เท#าก�บ == A == C เท/จไม#เท#าก�บ != A != C จร%ง

น�อย่กว#า < A < C จร%งน�อย่กว#าเท#าก�บ

<= A <= C จร%ง

มากกว#า > A > C เท/จมากกว#าเท#าก�บ

>= A >= C เท/จ

Page 24: Variable Constant Math

Company Logo

ฟั งก�ช�นัท�งค่ณิ�ตศ�สำตร� การใชื่�งานฟั7งก3ชื่�นทางคณ%ตัศาสตัร3จะตั�องประกาศ

#include <math.h> ในตัอนตั�นข้องการเข้'ย่นโปรแกรมก#อนเสมอ

ตั�วอย่#างฟั7งก3ชื่�นทางคณ%ตัศาสตัร3ก�รดำ��เนั�นัก�ร ร)ปแบบค่��สำ��ง ต�วิอย��ง

ก�รใช%ง�นั

ผลล�พื้ธี�

ยกก��ล�ง pow(เลข้ฐ�นั, เลข้ยกก��ล�ง)

pow(2,3)

8

square root sqrt(เลข้ท��ต%องก�รถอดำร�ก)

sqrt(4)

2

float absolute value

fabs(ต�วิเลข้) fabs(-3.14)

3.14

Integer absolute value

labs(ต�วิเลข้) labs(-3)

3

Page 25: Variable Constant Math

Company Logo

จงแปลงน%พิ่จน3ทางคณ%ตัศาสตัร3เป$นน%พิ่จน3ในภาษา C++

1. น%พิ่จน3ค�อ2. น%พิ่จน3ค�อ

3. น%พิ่จน3ค�อ

4. น%พิ่จน3ค�อ

แบบฝึ=กห�ดำ 3 ฝึ=กเข้�ยนันั�พื้จำนั�ในัภ�ษ� C++

26 3 5x x

22 3 6x x

2 53xx

22 3.14x x

Page 26: Variable Constant Math

Company Logo

แบบฝึ=กห�ดำ 3 ฝึ=กเข้�ยนันั�พื้จำนั�ในัภ�ษ� C++A = 1, B = -2, C=3จงหัาผลล�พิ่ธ์3ท'�ได�จากการด&าเน%นการทางตัรรกศาสตัร3ด�งน'�1. ((C%2)<= A) && (B<A)2. (B>=C) || (B>A)3. (A>B) && (B<C)4. ((A+2) >(1+C)) && (A !=2)5. (C<=A) && ((B+1) > 9)6. ((A-1) > (B*2)) || (C<A)7. (A !=C) && ((B/10) > (A+3))

Page 27: Variable Constant Math

สำ��นั�กวิ�ช�สำ�รสำนัเทศ�สำตร�