คำสั่งเงื่อนไข (Conditioning Statements)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
Advertisements

โปรแกรมทดสอบที่1 ทดสอบการแสดงผลข้อความ
1 C Programming An Introduction. 2 Preprocessing Directives เขียนได้ 2 รูปแบบ #include คอมไพเลอร์จะทำ การค้นหาเฮดเดอร์ไฟล์ที่ระบุ จากไดเร็คทอรีที่ใช้
โครงสร้างโปรแกรมภาษา C
Arithmetic Verb Template. ADD MOVE ZERO TO NO. ADD 1 TO NO. 0 1.
อัลกอริทึ่มทำงานวนซ้ำ
Lecture 5: ทางเลือกแบบหลายทาง
LAB 1 ให้นักศึกษาเขียน Flowchart โดยใช้โปรแกรม Microsoft Word วาดรูป Flowchart ส่ง Flowchart ที่วาดเสร็จแล้วในชั่วโมง และ print ใส่กระดาษ ส่งในครั้งหน้า.
ทบทวน & ลุยโจทย์ (Midterm)
ครั้งที่ 8 Function.
ควบคุมการทำงานด้วยเงื่อนไข Control Statement
Control Statement if..else switch..case for while do-while.
คำสั่งในการควบคุมโปรแกรม
การรับค่าและแสดงผล.
บทที่ 3 ตอนที่ 1 คำสั่งเงื่อนไขและการตัดสินใจ(p
Lecture no. 5 Control Statements
การควบคุมทิศทางการทำงาน
ผังงานโปรแกรม (Program Flowchart)
Week 15 C Programming.
คำสั่งเพื่อการกำหนดเงื่อนไข
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
โครงสร้างคำสั่งแบบเลือก (Selection)
คำสั่งเงื่อนไขและการควบคุม
คำสั่งควบคุมการทำงาน
ตัวแปรชุด.
การรับข้อมูลเบื้องต้นโดยใช้ฟังก์ชั่น scanf
การประกาศตัวแปร “ตัวแปร” คือสิ่งที่เราสร้างขึ้นมาเพื่อใช้เก็บค่าต่างๆและอ้างอิงใช้งานภายในโปรแกรม ตามที่เรากำหนดขึ้น การสร้างตัวแปรขึ้นมาเราเรียกว่า.
ตัวอย่างการใช้คำสั่ง IF_THEN
Relational Operators by Accords (IT SMART CLUB 2006) by Accords 1.
คำสั่งควบคุม (Control Statement)
WEEK#16: Method เมธอดคือกลุ่มคําสั่งที่ถูกกําหนดขึ้นเพื่อทำงาน อย่างใดอย่างหนึ่งเพื่อให้ได้ผลลัพธ์ตาม ต้องการ การประกาศเมธอด มีรูปแบบดังนี้ [modifier]
 เป็นเมธอดที่มีคุณลักษณะของ Polymorphism รูปแบบหนึ่ง โดยใช้ชื่อเมธอดเดียวกัน มากกว่า 1 เมธอด เพื่อทำงานในแบบเดียวกัน  คลาสลูกสามารถเขียนทับ เมธอดของคลาสแม่ได้
หน่วยที่ 5 การกำหนดเงื่อนไข. if - เลือกว่าทำหรือไม่ if if (เงื่อนไข) คำสั่ง;
หน่วยที่ 17 แอเรย์ของสตรัคเจอร์. แอเรย์ของข้อมูลสตรัคเจอร์ student_info student[30]; Student[0]Student[0].Name Student[0].Midterm Student[0].Assignment.
หน่วยที่ 1 พื้นฐานภาษา C
ธนาวินท์ รักธรรมานนท์
หน่วยที่ 4: คำสั่งควบคุมโปรแกรม (Control Flow Command)
คำสั่งควบคุมการทำงาน
รูปแบบ if-else if if (เงื่อนไข1) {
Flow Control.
การเขียนโปรแกรมภาษาซี
Chapter 4 คำสั่งควบคุมทิศทาง
โครงสร้างควบคุมการทำงาน
ครั้งที่ 3.
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
หมวดวิชาคอมพิวเตอร์ โรงเรียนพะเยาพิทยาคม โดย อ.วัชระ การสมพจน์
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
คำสั่งควบคุมการทำงานของ ActionScripts
บทที่ 6 การควบคุมโปรแกรม.
Week 3 Flow Control in PHP
Week 2 Variables.
Week 5 การทำซ้ำโดย while loop และ do while loop
Week 7 การเขียนโปรแกรมเบื้องต้น
Week 5 การทำซ้ำโดย while loop และ do while loop
คำสั่งเงื่อนไข (Condition Statement)
CHAPTER 4 Control Statements
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
คำสั่งควบคุม (Control Statements)
บทที่ 4 คำสั่งควบคุมแบบมีทางเลือก
บทที่ 7 เงื่อนไขในภาษาซี
CONDITION Computer Programming Asst. Prof. Dr. Choopan Rattanapoka.
การเขียนโปรแกรม (ภาษาซี)
การเปรียบเทียบเงื่อนไข
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
ผังงานโปรแกรม (Program Flowchart)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์ สัปดาห์ที่ 5 การเขียนโปรแกรมแบบทางเลือก การเขียนโปรแกรมแบบวนซ้ำ.
Chapter 4 ข้อความสั่ง เลือกทำ.
คำสั่งเงื่อนไข (Conditioning Statements)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
บทที่ 4 ตัวแปร (Variables)
ใบสำเนางานนำเสนอ:

คำสั่งเงื่อนไข (Conditioning Statements) บทที่ 5 คำสั่งเงื่อนไข (Conditioning Statements) ผู้สอน : ครูพัชรนันท์ กุลวรพิสิษฐ์

หัวข้อ ... คำสั่งเงื่อนไขและตัวดำเนินการ คำสั่ง if คำสั่ง switch คำสั่ง if-else คำสั่ง nested-if คำสั่ง switch การประยุกต์ใช้

5.1 คำสั่งเงื่อนไขและตัวดำเนินการ คำสั่งเงื่อนไข ใช้ในการตัดสินใจเมื่อมีทางเลือก ชนิดของเงื่อนไข มี 3 ชนิด 1. เงื่อนไขทางเลือกจาก 1 ทาง (if) condition yes statement no 2. เงื่อนไขทางเลือกจาก 2 ทาง (if-else) 3. เงื่อนไขทางเลือกจาก n ทาง (nested if, switch) statement1 condition statement2 . . . statement3 statementn n 1 2 3 condition no yes statement1 statement2

ตัวดำเนินการ ตัวดำเนินการพื้นฐานในคำสังเงื่อนไข คือ condition yes statement no ตัวดำเนินการพื้นฐานในคำสังเงื่อนไข คือ ตัวดำเนินการสัมพันธ์ (Relational Operators) เช่น == (equal) != (not equal) < (less than), <= (equal & less than) > (greater than), >= (equal & greater than) ผลจากเงื่อนไข เป็นได้ 2 แบบ คือ จริง (TRUE: 1) หรือ เท็จ (FALSE: 0) ถ้า x = 75 x == 0 ? x != 0 ? x <= 75 ? x > 75 ? ตัวดำเนินการตรรกะ (Logical operators) && (AND) || (OR) ! (NOT) (x > 0) && (x<50) ? 50 (x > 0) && (x<90) ? 90 (x < 10) || (x>90) ?

5.2 คำสั่ง if รูปแบบ ตัวอย่างเช่น expression yes statement(s) no รูปแบบ if (expression) statement; if (expression) { s1; s2; ... } statement ผลจาก นิพจน์ตรรกะ (Logical Expression) เป็นได้ 2 แบบคือ (TRUE หรือ FALSE) x >= 60 yes no Print “pass” ถ้า TRUE จะทำ statement ถ้า FALSE จะไม่ทำ statement ตัวอย่างเช่น if(x >= 60) printf(“pass”);

ตัวอย่าง 5.1 เขียนโปรแกรมตรวจสอบเงื่อนไขเพื่อคัดเลือกผู้ที่สอบผ่านตามเกณฑ์ (คะแนน X ³ 60) เมื่อ Inputs คือ ID, Name, X start Input ID, Name, X X >= 60 yes end no Print ID,Name (Pass) ผลลัพธ์ Enter ID): _ 53004100 #include <stdio.h> void main() { int ID, X; char Name[20]; printf("Enter ID: "); scanf("%d", &ID); printf("Enter Name: "); scanf("%s", &Name); printf("Enter X(0-100): "); scanf("%d", &X); Enter Name: _ AAAAA Enter X (0 - 100): _ 75 53004100 AAAAA (Pass) if (X >= 60) printf(“%d %s (Pass) \n", ID, Name); }

ตัวอย่าง 5.2 เขียนโปรแกรมหาค่า Absolute ของ X (|X|) เช่น ถ้า X=-4 จะได้ |X|=4 แนวคิด ทดสอบเงื่อนไข if X < 0 ปรับค่า X = -X) ผลลัพธ์ start Input X X < 0 yes end no Print X X = -X #include <stdio.h> void main() { int X; printf("Enter X: "); scanf("%d", &X); Enter X: _ -4 |X| = 4 if (X < 0) printf(“|X| = %d \n", X); }

5.3 คำสั่ง if-else expression no yes statement 1 statement 2 statement 1 statement 2 รูปแบบ if (expression) { statement1;… } else { statement2; … } ผลจาก นิพจน์ตรรกะ (Expression) เป็นได้ 2 แบบ คือ (TRUE หรือ FALSE) X = 75 X >= 80 no yes A not A ถ้า TRUE จะทำ statement 1 ถ้า FALSE จะทำ statement 2 not A ตัวอย่างเช่น if (X>=80) printf (“%d %s A\n”, ID, Name); else printf (“%d %s not A\n”, ID, Name);

ตัวอย่าง 5.3 เขียนโปรแกรมตรวจสอบเงื่อนไขเพื่อแบ่งนักศึกษาออกเป็น 2 กลุ่ม ตามเพศ (Gender) คือ เพศชาย (Male) หรือเพศหญิง (Female) start Input ID, Name,Gender Gender=‘M’ end yes “Male” no “Female” #include <stdio.h> void main() { int ID; char Name[20], Gender; printf("Enter ID: "); scanf("%d", &ID); printf("Enter Name: "); scanf("%s", &Name); fflush(stdin); // clear keyboard buffer printf("Enter Gender: "); scanf("%c", &Gender); ผลลัพธ์ if (Gender == ‘M’) printf("Male\n"); else printf("Female\n"); } Enter ID): _ 53004100 Enter Name: _ AAAAA Enter Gender: _ F Female

ตัวอย่าง 5.4 เขียนโปรแกรมรับค่า Integer (X) และตรวจสอบว่า X เป็นเลขคู่ (Even) หรือเลขคี่ (Odd) แนวคิด: X เป็น Even ถ้า X หารด้วย 2 ลงตัว ผลลัพธ์ start Input x rem = 0 end rem = x%2 yes “Even” no “Odd” #include <stdio.h> void main() { int X, rem; printf("Enter X: "); scanf("%d", &X); Enter X: _ 30 30 (Even) rem = X % 2; // remainder of X/2 if (rem == 0) printf("%d (Even)\n", X); else printf("%d (odd)\n", X); }

5.4 คำสั่ง nested-if ... รูปแบบ ผลจาก Expression เป็นได้ 2 แบบคือ exp1=true statement 1 yes no exp2=true statement 2 ... expn-1=true statement n statement1 statement2 รูปแบบ if (exp1) {statement1;…} else if (exp2) {statement2;…} else if (exp3) {statement3;…} ... else if (exp n-1) {statement n-1;…} else statement n; statementn-1 statement n ผลจาก Expression เป็นได้ 2 แบบคือ ถ้า TRUE จะทำ statement 1 ถ้า FALSE จะตรวจสอบ expression 2 ซึ่งได้ผล 2 แบบ คือ ถ้า TRUE จะทำ statement 2 ... ทดสอบเงื่อนไขต่อไปจนถึง expression n-1 ถ้า TRUE จะทำ statement n-1 หรือ FALSE จะทำ statement n

ตัวอย่าง 5.5 เขียนโปรแกรมตัดเกรดจากคะแนนสอบ (X) ตามเงื่อนไข ผลลัพธ์ 80 -100 => grade = ‘A’ 70 - 79 => grade = ‘B’ 60 - 69 => grade = ‘C’ 50 - 59 => grade = ‘D’ x < 50 => grade = ‘F’ ผลลัพธ์ Enter ID: _ 53004100 Enter Name: _ AAAAA Enter X (0-100): _ 75 Grade = B #include <stdio.h> void main() { int ID, X; char Name[20], Grade; printf("Enter ID: "); scanf("%d", &ID); printf("Enter Name: "); scanf("%s", &Name); printf("Enter X: "); scanf("%d", &X); if (X >= 80) Grade = 'A'; else if (X >= 70) Grade = 'B'; else if (X >= 60) Grade = 'C'; else if (X >= 50) Grade = 'D'; else Grade = 'F'; printf("Grade = %c\n", Grade); } start Grade = ‘F’ end Input ID, Name,X x >= 80 yes Grade = ‘A’ x >= 50 Grade = ‘D’ Grade x >= 70 Grade = ‘B’ x >= 60 Grade = ‘C’ X=75 Grade=‘B’

ตัวอย่าง 5.6 เขียนโปรแกรมอ่าน Binary Expression (+, -, *, /) เช่น 123.5+59.3 ที่มี รูปแบบข้อมูลเข้า คือ X Op Y แนวคิด: ทดสอบค่า Op ว่าเป็น +, -, *, หรือ / ผลลัพธ์ start Unknown Op end Input X,Op,Y Op = ‘+’ yes result = X+Y Op = ‘\’ result = X/Y result Op = ‘-’ result = X-Y Op = ‘*’ result = X*Y Op=‘+’ Enter ID: _ 123.5 + 59.3 #include <stdio.h> void main() { float X, Y, result=0; char Op; printf("Enter expression: "); scanf("%f %c %f", &X, &Op, &Y); if (Op == ‘+’) result = X+Y; else if (Op == ‘-’) result = X-Y'; else if (Op == ‘*’) result = X*Y; else if (Op = ‘/’) result = X/Y; // Y > 0 else else printf(“%c \aUnknown operator\n”, op); printf("= %.2f\n", result); } 182.80 result=182.8

ผลจาก expression เป็นได้ n แบบคือ 5.5 คำสั่ง switch st1 exp st2 ... st3 st n n 1 2 3 รูปแบบ switch (expression) { case value1: statement1; break; st1 st2 st3 st n หมายเหตุ switch = nested if case value2: statement2; break; ... case value n: statementn; break; default: statement; break; } exp=1 st1 yes no exp=2 st2 ... exp=n st n st ผลจาก expression เป็นได้ n แบบคือ ถ้าค่า expression ตรงกับ value i จะทำ statement i คำสั่ง break (มีผลทำให้จบ case ของคำสั่ง switch) คำสั่ง default (เป็นกรณีอื่นๆ ที่ไม่มีในเงื่อนไข 1-n)

ตัวอย่างการเขียนโปรแกรม “ร้านเหล้าไฮเทค” โดยใช้ฟังก์ชั่น if-else เงื่อนไข ถ้าอายุมากกว่า 18 เช็คเพศ หญิง หรือ ชาย - ถ้าเพศชาย ให้ไป โซนขายเหล้า - ถ้าเพศหญิง ให้ไป โซนขายไวท์ - ถ้าอายุน้อยกว่า 18 ห้ามเข้า ใช้ If-else สองชั้น

โปรแกรม #include [stdio.h] // เปลี่ยน [ , ] เป็น < , > int main() {     char name[50];   // เก็บชื่อ เป็นข้อความจึงต้องประกาศเป็น string (char แบบหลายช่อง)     char sex;             // เก็บเพศ (m/f) เป็นอักษรตัวเดียว ประกศ char ธรรมดาพอ     int age;               // เก็บอายุ จริงๆแล้วใช้ char ก็ได้ เพราะ char ก็เก็บเลขได้ แต่นิยม int     printf("What's your name : "); // คำถาม     gets(name)        // รับค่าชื่อ+สกุล ซึ่งมีช่องว่างคั่นอยู่ จึงต้องใช้ gets     printf("How old are you : ");     scanf("%d",&age); // รับค่าอายุ เป็นตัวเลข     printf("Male/Female (m/f) : ");     scanf("%c",&sex);  // รับค่าเพศ เป็นอักษรตัวเดียว     if(age<18) {  // ถ้าอายุน้อยกว่า 18 ห้ามเข้า             printf("Sorry you can'tenter this website");     }     else {  // ถ้าอายุไม่น้อยกว่า 18 ให้เช็คเพศ         if(sex=='m') {    // ถ้าผู้ชาย ไปโซนขายเหล้า            printf("Hi Mr.%s welcome to exteen bar. enjoy with our spirits",name);         }         else {  // ถ้าไม่ใช่(ก็คือเป็นหญิง) ไปโซนไวน์             printf("Hello Mrs.%s welcome to exteen bar. enyou with our wine",name);         }     }     scanf(" ");     return 0; }

อันนี้ แบบที่สอง if(age<18) {     printf("Sorry, You can't enter this website"); } else if(sex=='m') {     printf("Hi Mr.%s welcome to exteen bar. enjoy with our spirits",name); } else {     printf("Hello Mrs.%s welcome to exteen bar. enyou with our wine",name); }

บทนี้จะสอนการเช็คเงื่อนไขในอีกลักษณะ เรียกว่า switch บทนี้จะสอนการเช็คเงื่อนไขในอีกลักษณะ เรียกว่า switch...case เช่น สร้างโปรแกรมที่มีเมนู กด 1 ให้ทำอันนึง กด 2 ให้ทำอันนึง กด 0 ให้ออก เป็นต้น นักเรียนจำทำยังไง ถ้าเราทำแบบที่เคยเรียนกันมา เราก็ต้องรับค่าจากผู้ใช้ ว่ากดอะไร แล้วมาเข้า if..else สมมติให้ตัวแปรชื่อ menu เก็บค่าเมนูที่ผู้ใช้เลือก (สมมติว่ารับค่าจาก scanf ) เวลาเช็คก็ทำงี้ if(menu==1) printf("You choose 1"); else if(menu==2) printf("You choose 2"); else if(menu==0) printf("You want to exit"); else printf("Wrong choosing"); ถ้าเมนูมีมากกว่า 3 อย่าง เราก็เพิ่มส่วน else if ไปเยอะๆ แต่เขียนแบบนี้บางทีมันยาว เราเลยจะใช้ switch...case ซึ่งมีรูปแบบ แบบนี้ switch(ตัวแปร) {     case ค่า : คำสั่งที่จะให้ทำ;    // case ค่า ตามด้วยโคลอน(กด shft+เซมิโคลอน)                    break;     case ค่า : คำสั่ง;                    break;     default :คำสั่ง }

switch(menu) { // ต้องการดูค่าใน menu     case 1 : printf("Choose 1");  // ถ้า menu มีค่าเป็น 1 ให้ printf ตรงนี้มากกว่า 1 คำสั่งได้                              break; // ใส่ break ก่อนขึ้นเคสต่อไป     case 2 : printf("Choose 2 ");                 break;     case 0 : printf("exit");                 break;     default : printf("Wrong"); // ถ้าไม่ตรงเลย จะมาทำหลัง default ซึ่งไม่ต้องมี break ก็ได้ }

ตัวอย่าง 5.7 เขียนโปรแกรมอ่าน Binary Expression (+, -, *, /) เช่น 123.5+59.3 ที่มีรูปแบบข้อมูลเข้า คือ X Op Y แนวคิด: ทดสอบค่า Op ว่าเป็น +, -, *, หรือ / โดยใช้คำสั่ง switch ผลลัพธ์ #include <stdio.h> void main() { float X, Y, result=0; char Op; printf("Enter expression: "); scanf("%f %c %f", &X, &Op, &Y); switch (Op) { case ‘+’: result = X+Y; break; case ‘-’: result = X-Y'; break; case ‘*’: result = X*Y; break; case ‘/’: result = X/Y; break; // Y > 0 default: printf(“%c \aUnknown operator\n”, op); printf("= %.2f\n", result); } Enter ID: _ 123.5 + 59.3 start Unknown Op end Input X,Op,Y Op = ‘+’ yes result = X+Y Op = ‘\’ result = X/Y result Op = ‘-’ result = X-Y Op = ‘*’ result = X*Y 182.80

ตัวอย่าง 5.8 เขียนโปรแกรมรับค่าวันเป็นตัวเลข (1-7) และพิมพ์ผล เป็นข้อความ (Sun,Mon,Tue,Wed,Thu,Fri,Sat) เช่น D=7 พิมพ์ Sat ผลลัพธ์ #include <stdio.h> void main() { int D; printf("Enter an integer (1-7): "); scanf("%d", &D); Enter an integer (1-7): _ 7 Sat switch(D) { case 1: printf("Sun\n"); break; case 2: printf("Mon\n"); break; case 3: printf("Tue\n"); break; case 4: printf("Wed\n"); break; case 5: printf("Thu\n"); break; case 6: printf("Fri\n"); break; case 7: printf("Sat\n"); break; default: printf(“\a unknown integer %d\n", D); } start Input D D end Print “Mon” 2 Print “Sat” 7 Print “Sun” 1

Case Study-1 เขียนโปรแกรมสร้างรหัส Soundex Code ที่แปลงรหัสตัวอักษรเป็น รหัสเลข กลุ่ม 6 กลุ่ม 0: A,E,I,O,U,H,W,Y 1: B,F,P,V #include <stdio.h> #include <ctype.h> void main() { char ch; int group; printf("Enter a character: "); scanf("%c", &ch); ch = toupper(ch); 2: C,G,J,K,Q,S,X,Z 3: D,T 4: L 5: M,N 6: R switch(ch) { case ‘A’: case ‘E’: case ‘I’: case ‘O’: case ‘U’: case ‘H’: case ‘W’: case ‘Y’: group = 0; break; case ‘B’: case ‘F’: case ‘P’: case ‘V’: group = 1; break; case ‘C’: case ‘G’: case ‘J’: case ‘K’: case ‘Q’: case ‘S’: case ‘X’: case ‘Z’: group = 2; break; case ‘D’: case ‘T’: group = 3; break; case ‘L’: group = 4; break; case ‘M’: case ‘N’: group = 5; break; case ‘R’: group = 6; break; default: group = 9; break; } if (group != -9) printf(“Soundex code = %d\n”, group); else printf(“\a%c is not a character (a-z, A-Z)\n”);

Case Study-2 เขียนโปรแกรมนับตัวอักษรแต่ละตัวใน Text File ผลลัพธ์ #include <stdio.h> void main() { char File[500]; int i, n[30]={0}; printf("Enter text File: "); gets(File); while(File[i]!=‘\0’) { Enter text File: _ C Programming #a=1, #b=0, #c=1,#d=0,#e=0, #f=0, #g=2, #h=0,#i=1,#j=0, #k=0, #l=0, #m=2,#n=1,#o=1, switch(File[i]) { case ‘a’: case ‘A’: n[0]++; break; case ‘b’: case ‘B’: n[1]++; break; case ‘c’: case ‘C’: n[2]++; break; case ‘d’: case ‘D’: n[3]++; break; case ‘e’: case ‘E’: n[4]++; break; case ‘f’: case ‘F’: n[5]++; break; case ‘g’: case ‘G’: n[6]++; break; case ‘h’: case ‘H’: n[7]++; break; ... case ‘z’: case ‘Z’: n[25]++; break; case ‘0’: case ‘1’: case ‘2’: case ‘3’: … case ‘9’: n[26]++; break; default: n[27]++; break; } i++; // move to next character for(i=0; i<=25; i++) printf(“#%c=%d, “, 97+i, n[i]); // ASCII ‘a’ = 97 printf(“\n#0-9=%d, #others=%d”, n[26], n[27]); #p=1, #q=0, #r=2,#s=0,#t=0, #u=0, #v=0, #w=0,#x=0,#y=0, #z=0, #0-9=0, #others=1

Case Study-2 จิตตั้งมั่น