Flow Control.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
คำสั่งควบคุมในโปรแกรม Interactive C
Advertisements

โปรแกรมทดสอบที่1 ทดสอบการแสดงผลข้อความ
ครั้งที่ 9 Function(ต่อ).
โครงสร้างโปรแกรมภาษา C
อัลกอริทึ่มทำงานวนซ้ำ
Lecture 5: ทางเลือกแบบหลายทาง
สรุปคำสั่ง if(เงื่อนไข)
ทบทวน & ลุยโจทย์ (Midterm)
ควบคุมการทำงานด้วยเงื่อนไข Control Statement
Control Statement if..else switch..case for while do-while.
Control Statement for while do-while.
การโปรแกรมควบคุมแบบทำงานซ้ำ
บทที่ 3 ตอนที่ 1 คำสั่งเงื่อนไขและการตัดสินใจ(p
Lecture no. 5 Control Statements
Lecture 4: ทางเลือก, เงื่อนไขของทางเลือก
การควบคุมทิศทางการทำงาน
LAB # 4.
คำสั่ง while ควบคุมการทำงานวนซ้ำ กรณีระบบงานมีลักษณะตรวจสอบเงื่อนไขก่อน แล้วเข้าสู่ส่วนลำดับงานคำสั่งที่กำหนดไว้ การเขียนคำสั่ง while ต้องกำหนดนิพจน์แบบตรรกะเป็นเงื่อนไขมีค่าในหน่วยความจำเป็น.
คำสั่งแบบเลือกทำ Week 6.
Week 15 C Programming.
คำสั่งเพื่อการกำหนดเงื่อนไข
CE 112 บทที่ 5 การทำซ้ำในภาษา C
คำสั่งควบคุมการทำงาน
ตัวแปรชุด.
คำสั่งแบบมีเงื่อนไข IF Statement
การเขียนผังงานแบบโครงสร้าง
Repetitive Or Iterative
Php เงื่อนไข และ การวนซ้ำ Professional Home Page :PHP
Relational Operators by Accords (IT SMART CLUB 2006) by Accords 1.
คำสั่งควบคุม (Control Statement)
1 นายทินวัฒน์ พงษ์ทองเมือง. 2 การเปิดให้ Program ทำงาน 3  p:\xampplite\ xampplite-control.exe  Start Apache.
คำสั่งควบคุมเงื่อนไข และการทำงานเป็นรอบ
หน่วยที่ 4: คำสั่งควบคุมโปรแกรม (Control Flow Command)
ตัวอย่างโปรแกรมคำนวณหาพื้นที่สี่เหลี่ยม
คำสั่งควบคุมการทำงาน
การคำนวณทางคณิตศาสตร์ ตัวดำเนินการ
Page: 1 การโปรแกรมเชิงวัตถุด้วยภาษา JAVA บุรินทร์ รุจจนพันธุ์.. ปรับปรุง 15 มิถุนายน 2550 Structure Programming มหาวิทยาลัยเนชั่น.
การเขียนโปรแกรมภาษาซี
Chapter 5 คำสั่งควบคุมการทำซ้ำ
Chapter 4 คำสั่งควบคุมทิศทาง
โครงสร้างควบคุมการทำงาน
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
คำสั่ง for ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
หมวดวิชาคอมพิวเตอร์ โรงเรียนพะเยาพิทยาคม โดย อ.วัชระ การสมพจน์
Week 2 Variables.
Computer Programming for Engineers
Week 7 การเขียนโปรแกรมเบื้องต้น
บทที่ 10 คำสั่งควบคุม OUTLINE 1. คำสั่งแบบเรียงลำดับ (Sequence)
คำสั่งควบคุมขั้นตอน Flow control statements
1 Special Operators Special Operators ตัวดำเนินการพิเศษ Increment and decrement operators Conditional Operator.
2 /* ข้อความนี้เป็นเพียงคำอธิบาย ไม่มีผลต่อขั้นตอนการ ทำงานของโปรแกรม */ /* A simple program to display a line of text */ #include void main ( ) { printf.
การออกแบบโครงสร้าง (Structured Design)
คำสั่งเงื่อนไข (Condition Statement)
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
PHP การตรวจสอบเงื่อนไข.
อัลกอริทึ่มทำงานวนซ้ำ
อ. วชิระ หล่อประดิษฐ์. ตัว ดำเนินกา ร ศัพท์เฉพาะตัวอย่ าง ผลลัพธ์ ให้ a=3; b=2; Greater thana > b;True
Computer Programming Asst. Prof. Dr. Choopan Rattanapoka
บทที่ 7 เงื่อนไขในภาษาซี
CONDITION Computer Programming Asst. Prof. Dr. Choopan Rattanapoka.
บทที่ 6 คำสั่งเงื่อนไข.
การเขียนโปรแกรม (ภาษาซี)
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์ สัปดาห์ที่ 5 การเขียนโปรแกรมแบบทางเลือก การเขียนโปรแกรมแบบวนซ้ำ.
คำสั่งในการ ทำงานเบื้องต้น ของโปรแกรม. คำสั่งประกาศตัวแปร ชนิดของข้อมูล ชื่อตัวแปรที่ 1, ชื่อตัวแปรที่ 2; ตัวอย่าง Double score, total;
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
บทที่ 4 ตัวแปร (Variables)
ใบสำเนางานนำเสนอ:

Flow Control

ทบทวน โปรแกรม อย่างน้อยมีส่วนประกอบดังนี้ #include <stdio.h> preprocessor void main() { int a, b, c; a = 10; b = 20; c = a + b; printf(“c = %d\n”, c); } int a, b, c; declaration a = 10; input b = 20; c = a + b; process printf(“c = %d\n”, c); output

ทบทวน โปรแกรม อย่างน้อยมีส่วนประกอบดังนี้ #include <stdio.h> preprocessor void main() { } int a, b, c; declaration scanf(“%d”, &a); input scanf(“%d”, &b); c = a + b; process printf(“c = %d\n”, c); output

ต้องการคำนวณว่าพื้นที่ x ไร่ ปลูกมะม่วงได้กี่ต้น เมื่อมะม่วง 1 ต้น ใช้พื้นที่ในการปลูก 4 ตารางวา

ต้องการคำนวณว่าพื้นที่ x ไร่ ปลูกมะม่วงได้กี่ต้น เมื่อมะม่วง 1 ต้น ใช้พื้นที่ในการปลูก 4 ตารางวา #include <stdio.h> void main() { int x, mango; x = 5; mango = x * 400 / 4; printf(“number of mango trees = %d\n”, mango); } preprocessor declaration input process output

ต้องการคำนวณว่าพื้นที่ x ไร่ y งาน มีกี่ตารางวา #include <stdio.h> void main() { int x, mango; scanf(“%d”, &x); mango = x * 400 / 4; printf(“number of mango trees = %d\n”, mango); } preprocessor declaration input process output

Flow Control ลำดับการทำงานของคำสั่งในโปรแกรม จะทำงานจากบนลงล่าง เหมือนสายน้ำ ไหลจากที่สูงสู่ที่ต่ำ คำสั่งที่อยู่บน ทำงานก่อนคำสั่งที่อยู่ล่าง เมื่อทำงานคำสั่งสุดท้ายแล้ว จะจบโปรแกรม ถ้าต้องการให้ลำดับการทำงาน ไม่เรียงลงมาตามลำดับ ให้ใช้คำสั่ง if, switch, for, while, do – while

ตัวดำเนินการสัมพันธ์ (Relational Operator) ให้ผลลัพธ์เป็น จริง หรือ เท็จ > greater than >= greater than or equal < less than <= less than or equal == equal != not equal

ตัวอย่าง ถ้าผลลัพธ์เป็นเท็จ ค่าที่ได้เท่ากับ 0 printf(“value of true = %d\n”, 5==5); พิมพ์ 1 printf(“value of false = %d\n”, 5 !=5); พิมพ์ 0 ถ้าผลลัพธ์เป็นเท็จ ค่าที่ได้เท่ากับ 0 ถ้าผลลัพธ์เป็นจริง ค่าที่ได้ ไม่เท่ากับ 0

ตัวอย่าง ถ้า i = 1, j = 2, k = 3 นิพจน์ การแปลความหมาย ผลลัพธ์ (j + k) > (i + 5) k != 3 j == 2 จริง เท็จ 1

Logical Operator (ตัวดำเนินการตรรก) มีสามตัวคือ ! not && and || or

ตารางความจริง Op1 Op2 Op1 && Op2 Op1 || Op2 จริง เท็จ

ทดสอบ (5>3) && 3<2 6 != 6 || 7 != 7 2 <= 3 && 3 >= 2 !(2 > 3) || (3 > 4) (4>3) && (3 < 2) || (2 == 2) 6*2 < 2*9 && 3 == 4 5+10 == 15 && 2 == 1+1 1 1 1 1

if มีการใช้งาน 3 รูปแบบ if if – else nested if

if #include <stdio.h> void main() { int score; score = 82; if (score > 50) printf(“You pass\n”); }

start score = 82 score > 50 ? n y You pass “You pass” stop

if #include <stdio.h> void main() { int score; score = 22; if (score > 50) printf(“You pass\n”); }

start score = 22 score > 50 ? n y no output “You pass” stop

if #include <stdio.h> void main() { int score; printf(“enter score ”); scanf(“%d”, &score); if (score > 50) printf(“You pass\n”); }

start input score score 75 n score >50 ? y You pass “You pass” stop

input score no output start score > 50 ? “You pass” stop score 36 n

if – else #include <stdio.h> void main() { int score; printf(“enter score ”); scanf(“%d”, &score); if (score > 50) printf(“Pass\n”); else printf(“Fail\n”); }

start input score score 75 n score >50 ? y Pass “Fail” “Pass” stop

input score Fail start score > 50 ? “Fail” “You pass” stop score 36

คำสั่ง 1 – 3 ทำงานเมื่อเงื่อนไขเป็นจริง บล็อกคำสั่ง บล็อกคำสั่ง ใช้เครื่องหมาย { } บล็อกคำสั่ง มีหน้าที่บอกขอบเขตของชุดคำสั่งที่อยู่ภายใต้การควบคุมของคำสั่งอื่น ตัวอย่าง if (เงื่อนไข) { คำสั่งที่ 1 คำสั่งที่ 2 คำสั่งที่ 3 } คำสั่ง 1 – 3 ทำงานเมื่อเงื่อนไขเป็นจริง

คำสั่งที่ 1 ทำงานเมื่อเงื่อนไขเป็นจริง บล็อกคำสั่ง ถ้าไม่มีบล็อกคำสั่ง คำสั่งที่อยู่ภายใต้การควบคุมของคำสั่งอื่นจะมีเพียงคำสั่งเดียว ตัวอย่าง if (เงื่อนไข) คำสั่งที่ 1 คำสั่งที่ 2 คำสั่งที่ 3 คำสั่งที่ 1 ทำงานเมื่อเงื่อนไขเป็นจริง

บล็อกคำสั่ง if - else if (เงื่อนไข) { คำสั่งที่ 1 คำสั่งที่ 2 } else { คำสั่งที่ 3 คำสั่งที่ 4 คำสั่งที่ 5 } ทำงานเมื่อเงื่อนไขเป็นจริง ทำงานเมื่อเงื่อนไขเป็นเท็จ

ตัวอย่าง #include <stdio.h> void main() { int x = 7, y = 5; if (x%2 == 0) x++; y--; printf(“x = %d y = %d\n”, x, y); } x = 7 y = 4

ตัวอย่าง #include <stdio.h> void main() { int x = 8, y = 5; if (x%2 == 0) x++; y--; printf(“x = %d y = %d\n”, x, y); } x = 9 y = 4

การย่อหน้าที่ถูกต้องจะช่วยให้อ่านโปรแกรมง่ายขึ้น #include <stdio.h> void main() { int x = 7, y = 5; if (x%2 == 0) x++; printf(“x = %d y = %d\n”, x, y); } y--

#include <stdio.h> void main() { int x = 7, y = 5; if (x%2 == 0) { x++; y--; }else { x--; y++; } printf(“x = %d y = %d\n”, x, y); x = 6 y = 6

#include <stdio.h> void main() { int x = 10, y = 20; if (x%2 == 0) { x++; y--; } else { x--; y++; } printf(“x = %d y = %d\n”, x, y); x = 11 y = 19

nested if คำสั่ง if ที่นำมาซ้อนกัน เรียกว่า nested if รูปแบบ if () { คำสั่ง… } else if () { คำสั่ง … }

#include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number > 0) printf(“positive number\n”); else if (number < 0) printf(“negative number\n”); else printf(“zero\n”) } 10 positive number

#include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number > 0) printf(“positive number\n”); else if (number < 0) printf(“negative number\n”); else printf(“zero\n”) } -2 negative number

#include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number > 0) printf(“positive number\n”); else if (number < 0) printf(“negative number\n”); else printf(“zero\n”) } zero

2 Two #include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number == 1) printf(“One\n”); else if (number == 2) printf(“Two\n”); else if (number == 3) printf(“Three\n”); else if (number == 4) printf(“Four\n”); else if (number == 5) printf(“Five\n”); else printf(“I don’t know\n”); } 2 Two

4 Four #include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number == 1) printf(“One\n”); else if (number == 2) printf(“Two\n”); else if (number == 3) printf(“Three\n”); else if (number == 4) printf(“Four\n”); else if (number == 5) printf(“Five\n”); else printf(“I don’t know\n”); } 4 Four

I don’t know #include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number == 1) printf(“One\n”); else if (number == 2) printf(“Two\n”); else if (number == 3) printf(“Three\n”); else if (number == 4) printf(“Four\n”); else if (number == 5) printf(“Five\n”); else printf(“I don’t know\n”); } I don’t know

6 I don’t know #include <stdio.h> void main() { int number; printf(“enter number : ”); scanf(“%d”, &number); if (number == 1) printf(“One\n”); else if (number == 2) printf(“Two\n”); else if (number == 3) printf(“Three\n”); else if (number == 4) printf(“Four\n”); else if (number == 5) printf(“Five\n”); else printf(“I don’t know\n”); } 6 I don’t know

ไปห้อง lab กันเถอะ