Lecture 7: ทางเลือกแบบมีโครงสร้างซ้อนใน

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
1 C Programming An Introduction. 2 Preprocessing Directives เขียนได้ 2 รูปแบบ #include คอมไพเลอร์จะทำ การค้นหาเฮดเดอร์ไฟล์ที่ระบุ จากไดเร็คทอรีที่ใช้
Advertisements

อัลกอริทึ่มทำงานวนซ้ำ
Lecture 5: ทางเลือกแบบหลายทาง
Computer Programming 1 LAB Test 3
บทที่ 7 รีเคอร์ซีฟ ระหว่างการออกแบบเขียนโปรแกรมแบบบนลงล่าง (Top-down Design) จะมีงานย่อย(Subtask) เพื่อแก้ปัญหาในแต่ละเรื่อง และผู้เขียนโปรแกรมต้องการใช้งานย่อยในลักษณะที่เรียกตัวเองขึ้นมาทำงาน.
เริ่มต้นเขียนโปรแกรมภาษา C++
Control Statement if..else switch..case for while do-while.
หลักการโปรแกรม 1 Lecture 3: ตัวแปร, นิพจน์คณิตศาสตร์, การคำนวณทางคณิตศาสตร์,การดำเนินการกับสายอักขระ.
Lecture 4: ทางเลือก, เงื่อนไขของทางเลือก
Lecture 9: การวนซ้ำแบบมีโครงสร้างการวนซ้ำซ้อนกัน
Lecture 6: ทางเลือกแบบมีโครงสร้างซ้อนใน
หลักการโปรแกรม 1 Lecture 1: ความรู้เบื้องต้นเกี่ยวกับ การโปรแกรม.
เฉลย Lab 10 Loop.
LAB # 4 Computer Programming 1 1. พิจารณาโปรแกรมต่อไปนี้
LAB # 8 Computer Programming 1
LAB # 4.
คำสั่งเพื่อการกำหนดเงื่อนไข
Lab 5: คำสั่ง switch - case
คำสั่งควบคุมการทำงาน
ตัวอย่างการใช้คำสั่ง IF_THEN
หน่วยที่ 1 พื้นฐานภาษา C
หน่วยที่ 8 อาร์กิวเมนต์ของ main
ตัวอย่างโปรแกรมคำนวณหาพื้นที่สี่เหลี่ยม
บทที่ 7 รีเคอร์ซีฟ ระหว่างการออกแบบเขียนโปรแกรมแบบบนลงล่าง (Top-down Design) จะมีงานย่อย(Subtask) เพื่อแก้ปัญหาในแต่ละเรื่อง และผู้เขียนโปรแกรมต้องการใช้งานย่อยในลักษณะที่เรียกตัวเองขึ้นมาทำงานลักษณะของฟังก์ชั่นมีความรอบรัดสั้นกว่าแบบวนลูป.
Lecture 4 องค์ประกอบภาษา C To do: Hand back assignments
คำสั่งควบคุมการทำงาน
Lecture 9 Class (คลาส) To do: Hand back assignments
Flow Control.
Chapter 4 คำสั่งควบคุมทิศทาง
โปรแกรมการคำนวณพื้นที่สามเหลี่ยมมุมฉาก
โครงสร้างควบคุมการทำงาน
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
คำสั่ง for ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
โครงสร้างแบบลำดับ คำสั่ง x คำสั่ง y.
Week 7 การเขียนโปรแกรมเบื้องต้น
บทที่ 10 คำสั่งควบคุม OUTLINE 1. คำสั่งแบบเรียงลำดับ (Sequence)
อัลกอริทึ่มทำงานวนซ้ำ
ตัวแปรและชนิดของข้อมูล (Variables & Data Types)
1 สตริง (String) การประกาศค่าตัวแปรสตริง การกำหนดค่าสตริง การอ้างอิงตัวอักษรแต่ละตัวในสตริง ฟังก์ชั่นที่ใช้ในการจัดการสตริง ฟังก์ชั่นในการเปลี่ยนรูปแบบของสตริง.
Introduction to Flowchart
หลักการโปรแกรม 1 Lecture 14: โปรแกรมย่อย ( การส่งพารามิเตอร์ แบบ pass by reference)
หลักการโปรแกรม 1 Lecture 9: การทำซ้ำ (for).
หลักการโปรแกรม 1 Lecture 8: การทำซ้ำ (while, do-while)
1 exit() and break C++ provides a way to leave a program early (before its natural finish) with the exit() function. The format of exit() is as follows:
Streams. Formatted output cout
Collections. Data structures Data Structures ( โครงสร้างข้อมูล ) เกิดจากการ นำข้อมูลขั้นพื้นฐานที่แบ่งแยกไม่ได้ (atomic data type) เช่น int, char, double.
การเปรียบเทียบเงื่อนไข
โครงสร้างภาษาซี C ++ structure
หลักการและวิธีการแก้ปัญหาด้วยกระบวนการทางเทคโนโลยีสารสนเทศ
บทที่ 1 บทนำ 1.1 ฮาร์ดแวร์คอมพิวเตอร์ 1.2 ซอฟต์แวร์คอมพิวเตอร์
หลักการโปรแกรม อ.ธนากร อุยพานิชย์.
การเขียนโปรแกรมด้วยภาษา C
C Programming By Mr. Sanae Sukprung.
การควบคุมทิศทางการทำงาน
Chapter 4 ข้อความสั่ง เลือกทำ.
คำสั่งวนซ้ำ (Looping)
Concept of Programing.
บทที่ 6 การเขียนโปรแกรมแบบมีเงื่อนไข
INC 161 , CPE 100 Computer Programming
ใช้สำหรับ Turbo C++ Version 3.0
ภาษา C เบื้องต้น.
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
โครงสร้างโปรแกรมภาษา C
บทที่ 4 ตัวแปร (Variables)
ข้อมูล ตัวแปร และค่าคงที่ของภาษา VB
ส่วนการทะเบียนทั่วไป สำนักบริหารการทะเบียน
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop) Part1
ระบบการควบคุมการเงินของหน่วยงานย่อย พ.ศ ของ
การเขียนโปรแกรมคอมพิวเตอร์
Array: One Dimension Programming I 9.
ใบสำเนางานนำเสนอ:

Lecture 7: ทางเลือกแบบมีโครงสร้างซ้อนใน 886201 หลักการโปรแกรม 1 Lecture 7: ทางเลือกแบบมีโครงสร้างซ้อนใน

Nested if Nested Branches คือการที่มีคำสั่ง if ซ้อนอยู่ใน block ของ if หรือ block ของ else เช่น T F

Tax brackets for single filers: from $0 to $32,000 above $32,000 then tax depends on income Tax brackets for married filers: from $0 to $64,000 above $64,000 then tax depends on income

const double RATE1_SINGLE_LIMIT = 32000; #include <iostream> #include <string> using namespace std; int main() { const double RATE1 = 0.10; const double RATE2 = 0.25; const double RATE1_SINGLE_LIMIT = 32000; const double RATE1_MARRIED_LIMIT = 64000; double tax1 = 0; double tax2 = 0; double income; cout << "Please enter your income: "; cin >> income; cout << "Please enter s for single, m for married: "; string marital_status; cin >> marital_status;

if (marital_status == "s") { if (income <= RATE1_SINGLE_LIMIT) tax1 = RATE1 * income; } else tax1 = RATE1 * RATE1_SINGLE_LIMIT; tax2 = RATE2 * (income - RATE1_SINGLE_LIMIT);

แบบฝึกหัด จงเขียนโปรแกรมรับตัวเลือก c จาก keyboard ถ้า c<10 ให้แสดงค่า 2c; ถ้า 10<=c<100 ให้แสดงค่า c2; ถ้า c>=100 ให้แสดงค่า c

start stop read c c<10 print 2*c T F print c*c c<100 print c

int main() { int c; cout << “Input an integer : ”; cin >> c; if ( c < 10 ) cout << 2*c << endl; else { if ( c < 100 ) cout << c*c << endl; cout << c << endl; } return 0;

พิจารณา else x = 3; } else เป็นคู่กับ if ตัวไหน ? a == 10 c > 100 T F a == 10 c > 100 x = 2 x = 3 x = 4 b < 20 x = 1 if (a == 10) { if (b < 20) x = 1; if (c > 100) x = 2; else x = 3; } else x = 4;

พิจารณา if (x) else เป็นคู่กับ if ตัวไหน ? if (y) statement1; else statement2; else เป็นคู่กับ if (y) เพราะต้องคู่กับ if ที่อยู่ใกล้ที่สุด

พิจารณา if (x) else เป็นคู่กับ if ตัวไหน ? { if (y) statement1; } else statement2; else เป็นคู่กับ if (x) เพราะภายใน block คร่อมเฉพาะ if (y) ซึ่งไม่มี else

แบบฝึกหัด if (a < b) if (c > d) if (d == e) a = a + b; else b = c + d; d = a + b;

แบบฝึกหัด ให้เขียนโปรแกรมสำหรับตรวจสอบค่าจุด (x, y) ที่รับเข้ามาว่าอยู่ใน quadrant ใด Q1, Q2, Q3 หรือ Q4 (ดังรูป) หรืออยู่บนแกน x (x-axis), แกน y (x-axis) หรือ เป็น Origin point (0, 0) หมายเหตุ ให้รับค่า x และ y เป็นจำนวนเต็ม