ตัวอย่างการวิเคราะห์งาน และ การเขียนผังงานและซูโดโค้ด

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Suphot Sawattiwong Lab I-II Suphot Sawattiwong
Advertisements

ครั้งที่ 9 Function(ต่อ).
โจทย์ หาราคาค่าเช่าห้องพัก โดยมีเงื่อนไขว่า ถ้าพักไม่เกิน5วัน จะไม่มีส่วนลด ถ้าพัก5-8วัน จะมีส่วนลด 5% แต่ถ้าพักมากกว่า8วันขึ้นไป จะมีส่วนลด 10%
การเขียนโปรแกรมคอมพิวเตอร์
LAB # 2.
Computer Programming 1 6. โปรแกรมต่อไปนี้เป็นโปรแกรมสำหรับรับค่า N และรับจำนวนเต็มที่มีค่าระหว่าง 0 ถึง 9 จำนวน N ตัว นับจำนวนเต็มแต่ละค่าที่ป้อนแล้วแสดงผล.
LAB 1 ให้นักศึกษาเขียน Flowchart โดยใช้โปรแกรม Microsoft Word วาดรูป Flowchart ส่ง Flowchart ที่วาดเสร็จแล้วในชั่วโมง และ print ใส่กระดาษ ส่งในครั้งหน้า.
ทบทวน & ลุยโจทย์ (Midterm)
ครั้งที่ 8 Function.
โครงสร้างควบคุมและคำสั่งแบบเงื่อนไข
ขั้นตอนการพัฒนาโปรแกรม
Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
Lecture 10: อาร์เรย์หนึ่งมิติ
ตัวอย่าง Flowchart.
ที่มาของโครงการ เจ้าหนี้การค้าในประเทศมากกว่า 5 พันราย ซึ่งเดิมจ่ายชำระด้วย CHQ และเปลี่ยนเป็นการจ่ายชำระหนี้เงินโอน 1,970 ราย พบปัญหา เจ้าหนี้เงินโอนสอบถามรายการจ่ายชำระหนี้
LAB # 3 Computer Programming 1
ผังงานโปรแกรม (Program Flowchart)
คำสั่งแบบเลือกทำ Week 6.
หน่วยที่ 2 ภาษาโปรแกรม และการออกแบบโปรแกรม
เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม
กระบวนการเขียนโปรแกรม
การออกแบบโปรแกรมอย่างมีโครงสร้าง Structured Design
ตัวอย่างการวิเคราะห์งาน
ตัวอย่างการวิเคราะห์งาน
วิธีการทำงานของผังงาน
ตัวอย่างคำสั่ง CASE.
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
บทที่ 4 การโปรแกรมเชิงเส้น (Linear Programming)
2.5 ตัวแปรชุดมิติเดียวและตัวแปรชุดสองมิติ
คำสั่งควบคุม (Control Statement)
การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม
การเขียนโปรแกรมแบบมีทางเลือก
บทที่ 11 การเขียนโปรแกรมภาษาซี
Flowchart รูปแบบ If ซ้อน If ก็คือ การเอา If ไปไว้ใน If ทางฝั่ง True  โดยโครงสร้าง If ซ้อน If นั้นเอาไว้ใช้กับ กรณีตรวจสอบเงื่อนไขที่มากกว่า 2 กรณี เพราะเนื่องจาก.
ตัวอย่างโปรแกรมคำนวณหาพื้นที่สี่เหลี่ยม
รูปแบบ if-else if if (เงื่อนไข1) {
Chapter 4 คำสั่งควบคุมทิศทาง
โปรแกรมการคำนวณพื้นที่สามเหลี่ยมมุมฉาก
ครูรัตติยา บุญเกิด.
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
การใช้คำสั่ง เงื่อนไข การเขียนเว็บเพจโดยใช้ ภาษาสคริปต์ ศูนย์คอมพิวเตอร์โรงเรียนปลวกแดงพิทยาคม.
การใช้คำสั่งเงื่อนไขใน exel
คำสั่งลำลอง.
โดย อ. นัฐพงศ์ ส่งเนียม การเขียนโปรแกรมคอมพิวเตอร์ และอัลกอรทึ่ม ( ) Lec04 : [ การแปลงจาก FlowChart.
รูปแบบการเขียนผังงานแบบ 2 ทางเลือก
การวิเคราะห์ปัญหา ปัญหาอะไร ?.
การเขียนผังงานแบบทางเลือก
การออกแบบโปรแกรม ขั้นตอนการแก้ปัญหา การนิยามปัญหา (Problem definition)
โจทย์วิเคราะห์ปัญหาที่ 1
Week 7 การเขียนโปรแกรมเบื้องต้น
Computer Programming for Engineers
การเขียนโปรแกรม ตอนที่ 1 (ต่อ)
การออกแบบโครงสร้าง (Structured Design)
วิชา COSC2202 โครงสร้างข้อมูล (Data Structure)
หลักการเขียนโปรแกรม ( )
การใช้คำสั่งเงื่อนไข
แผนผังความคิดรวบยอด เรื่อง ภาษาคอมพิวเตอร์ และตัวอย่างผังงาน
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
คำสั่งทำซ้ำ for คำสั่ง for เป็นคำสั่งทำซ้ำในลักษณะ Definite loop คือทราบจำนวนรอบที่แน่นอนในการทำงาน ซึ่งจะใช้ตัวแปร 1 ตัวในการนับจำนวนรอบว่าครบตามกำหนดหรือไม่
Output of C.
อ สิทธิชัย เอี่ยววุฑฒะจินดา
การแก้ปัญหาโปรแกรม (Flowchart)
เด็กหญิง นัฐนรี โยธาตรี เลขที่ 13 ม.3/1
CONDITION Computer Programming Asst. Prof. Dr. Choopan Rattanapoka.
การเขียนโปรแกรม (ภาษาซี)
ผังงาน (Flow chart).
Flowchart การเขียนผังงาน.
Problem Analysis and Algorithm in Programming (การวิเคราะห์ปัญหา และการจำลองความคิดในการเขียนโปรแกรมคอมฯ)
ผังงานโปรแกรม (Program Flowchart)
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์ สัปดาห์ที่ 5 การเขียนโปรแกรมแบบทางเลือก การเขียนโปรแกรมแบบวนซ้ำ.
ใบสำเนางานนำเสนอ:

ตัวอย่างการวิเคราะห์งาน และ การเขียนผังงานและซูโดโค้ด ตัวอย่างการวิเคราะห์งาน และ การเขียนผังงานและซูโดโค้ด

ตัวอย่างที่ 1 โจทย์ จงเขียนโปรแกรมคำนวณพื้นที่สามเหลี่ยม โดยรับค่าความยาวฐานและความสูงจากผู้ใช้ สิ่งที่โจทย์ต้องการ : พื้นที่สามเหลี่ยม รูปแบบผลลัพธ์ ป้อนค่าความสูง => <รอรับค่า> ป้อนค่าความยาวฐาน => <รอรับค่า> พื้นที่สามเหลี่ยม => <แสดงค่า> ข้อมูลนำเข้า ความยาวฐาน ความสูง

กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย 5. วิธีการประมวลผล ชื่อตัวแปร ความหมาย Height ความสูง Base ความกว้างฐาน Area พื้นที่สามเหลี่ยม 5. วิธีการประมวลผล รับค่าจากตัวแปร Height , Base คำนวณ Area = 0.5 * Height * Base พิมพ์ค่า Area จบการทำงาน

START STOP Pseudocode Start 1. Read Height , Base 2. Compute Area = 0.5 * Height * Base 3. Display Area Stop รับค่า Height , Base Area = 0.5 * Height * Base แสดง Area STOP

ตัวอย่างที่ 2 โจทย์ จงเขียนโปรแกรมแปลงอุณหภูมิจากหน่วยองศาฟาเรนไฮต์ เป็นองศาเซลเซียสโดยมีสูตรในการแปลงดังนี้ องศา C = (F-32) * 5 / 9 สิ่งที่โจทย์ต้องการ อุณหภูมิที่มีหน่วยองศาเซลเซียส รูปแบบผลลัพธ์ ป้อนอุณหภูมิ(F) => <รอรับค่า> enter อุณหภูมิ <หน่วยฟาเรนไฮต์> มีค่าเท่ากับ <หน่วยเซลเซียส>

3. ข้อมูลเข้า อุณหภูมิที่มีหน่วยองศาฟาเรนไฮต์ 4. กำหนดตัวแปรที่ใช้ F = อุณหภูมิหน่วยฟาเรนไฮต์ C = อุณหภูมิหน่วยเซลเซียส

5. การประมวลผล 1. รับค่าใส่ตัวแปร F 2. คำนวณ C =(F-32)*5/9 START 5. การประมวลผล 1. รับค่าใส่ตัวแปร F 2. คำนวณ C =(F-32)*5/9 3. แสดงผลลัพธ์ค่า C 4. จบการทำงาน รับ F C = (F-32) *5 / 9 แสดง C Pseudocode Start 1. Read F 2. Compute C =(F-32) *5 /9 3. Display C Stop STOP

ตัวอย่างที่ 3 โจทย์ จงเขียนโปรแกรมคำนวณการขายสินค้า โดยรับ ราคาสินค้า/หน่วย และจำนวนที่ซื้อ จากผู้ใช้ ถ้ายอดรวมเกิน 1000 บาท ลดราคาให้ 10% โดยให้แสดง ราคาส่วนลด และราคาสุทธิ สิ่งที่โจทย์ต้องการ ราคารวม ราคาส่วนลด ราคาสุทธิที่ต้องชำระ รูปแบบผลลัพธ์ ราคาสินค้า/หน่วย => <รอรับค่า> จำนวน => <รอรับค่า> ราคารวม => <แสดงค่า> ส่วนลด => <แสดงค่า> ราคาสุทธิ => <แสดงค่า>

3. ข้อมูลนำเข้า กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย 3. ข้อมูลนำเข้า ราคาสินค้า / หน่วย จำนวน กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย UnitPrice ราคา/หน่วย QTY จำนวนที่ซื้อ TotalPrice ราคารวม Discount ราคาส่วนลด NetPrice ราคาสุทธิ

5. วิธีการประมวลผล รับค่าจากตัวแปร UnitPrice , QTY คำนวณ TotalPrice = UnitPrice * QTY ทำการเปรียบเทียบค่าของ TotalPrice ดังนี้ ถ้า TotalPrice >= 1000 ให้ Discount = TotalPrice * 0.10 ไปทำงานข้อ 4 ถ้า TotalPrice < 1000 ให้ Discount = TotalPrice * 0 ไปทำงานข้อ 4 คำนวณราคาสุทธิ NetPrice = TotalPrice - Discount แสดงผลลัพธ์ จบการทำงาน

START รับค่า QTY , UnitPrice STOP Pseudocode Start 1. Read QTY , UnitPrice 2. Compute TotalPrice=QTY*UnitPrice 3. Compare TotalPrice If TotalPrice >=1000 -> Discount = TotalPrice*0.1 else -> Discount = TotalPrice*0 4. Compute NetPrice = TotalPrice-Discount 5. Display TotalPrice , Discount , NetPrice Stop รับค่า QTY , UnitPrice TotalPrice = QTY * UnitPrice TotalPrice>=1000 No Yes Discount = TotalPrice * 0 Discount = TotalPrice *0.10 NetPrice = TotalPrice - Discount แสดง TotalPrice , Discount, NetPrice STOP

ตัวอย่างที่ 4 โจทย์ จงเขียนโปรแกรมคำนวณค่าแรงและภาษีที่ต้องจ่ายของพนักงาน 1 คน โดยการรับข้อมูล รหัสประจำตัวพนักงาน , อัตราค่าแรง , จำนวนชั่วโมงการทำงาน โดยมีข้อกำหนดในการหักภาษี ณ ที่จ่าย ดังนี้ ถ้าค่าแรงมากกว่า 5000 คิดภาษี 5% ของค่าแรงที่ได้ ถ้าค่าแรงน้อยกว่าหรือเท่ากับ 5000 คิดภาษี 2% สิ่งที่โจทย์ต้องการ ภาษีที่หักจากค่าแรง ณ ที่จ่าย ค่าแรงที่ได้รับ รูปแบบผลลัพธ์ เลขประจำตัว => <รอรับค่า> จำนวนชั่วโมง => <รอรับค่า> อัตราค่าแรง => <รอรับค่า> ค่าแรง => <แสดงค่า> ภาษี => <แสดงค่า> ค่าแรงสุทธิหลังหักภาษี => <แสดงค่า>

3. ข้อมูลนำเข้า กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย 3. ข้อมูลนำเข้า รหัสประจำตัวพนักงาน จำนวนชั่วโมง อัตราค่าแรง กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย Emp_ID รหัสประจำตัวพนักงาน Hours จำนวนชั่วโมงที่ทำงาน Rate อัตราค่าแรง Pay ค่าแรง Tax ภาษี Net_Pay ค่าแรงสุทธิ

5. วิธีการประมวลผล รับค่าจากตัวแปร Emp_ID , Hours , Rate คำนวณ Pay = Hours * Rate ทำการเปรียบเทียบค่าของ Pay ดังนี้ ถ้า Pay> 5000 ให้ Tax = Pay * 0.05 ไปทำงานข้อ 4 ถ้า Pay <= 5000 ให้ Tax = Pay * 0.02 ไปทำงานข้อ 4 คำนวณค่าแรงสุทธิ Net_Pay = Pay - Tax แสดงผลลัพธ์ จบการทำงาน

2. Compute Pay = Hours * Rate 3. Compare Pay If Pay > 5000 -> START Pseudocode Start 1. Read Emp_ID , Hours , Rate 2. Compute Pay = Hours * Rate 3. Compare Pay If Pay > 5000 -> Tax = Pay *0.05 else -> Tax = Pay * 0.02 4. Compute Net_pay = Pay - Tax 5. Display Tax , Net_pay Stop รับค่า Emp_ID , Hours , Rate Pay = Hours * Rate Pay > 5000 No Yes Tax = Pay * 0.02 Tax = Pay * 0.05 Net_Pay = Pay - Tax แสดง Tax , Net_Pay STOP

ตัวอย่างที่ 5 โจทย์ จงเขียนโปรแกรมตัดเกรดวิชาคอมพิวเตอร์และการเขียนโปรแกรม โดยการรับคะแนนกลางภาคและคะแนนปลายภาคจากผู้ใช้ โดยมีคะแนนรวมเต็ม 100 คะแนน มีเงื่อนไขในการคิดเกรดดังนี้ - ถ้าได้คะแนน 80 คะแนนขึ้นไป ได้เกรด A - ถ้าได้คะแนน 70-79 คะแนน ได้เกรด B - ถ้าได้คะแนน 60-69 คะแนน ได้เกรด C - ถ้าได้คะแนน 50-59 คะแนน ได้เกรด D - ถ้าได้คะแนนต่ำกว่า 50 คะแนน ได้เกรด F

สิ่งที่โจทย์ต้องการ รูปแบบผลลัพธ์ รายงานผลการเรียน 3. ข้อมูลนำเข้า คำนวณหาเกรดของนักศึกษาแต่ละคน รูปแบบผลลัพธ์ รายงานผลการเรียน รหัส ชื่อ คะแนนรวม เกรด .. ... ... ... 3. ข้อมูลนำเข้า รหัสนักศึกษา ชื่อ คะแนนกลางภาค คะแนนปลายภาค

4. กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย Std_ID รหัสนักศึกษา 4. กำหนดตัวแปรที่ใช้ ชื่อตัวแปร ความหมาย Std_ID รหัสนักศึกษา Std_Name ชื่อนักศึกษา Mid_Score คะแนนกลางภาค Final_Score คะแนนปลายภาค Total_Score คะแนนรวม Grade เกรด

5. วิธีการประมวลผล รับค่าจากตัวแปร Std_ID , Std_Name , Mid_Score , Final_Score ตามลำดับทีละรายการ คำนวณ Total_Score = Mid_Score + Final_Score ทำการเปรียบเทียบค่าของ Total_Score ดังนี้ ถ้า Total_score >= 80 ให้ Grade = A ไปทำงานข้อ 4 ถ้า Total_score >= 70 และ Total_Score <=79 ให้ Grade = B ไปทำงานข้อ 4 ถ้า Total_score >= 60 และ Total_Score <=69 ให้ Grade = C ไปทำงานข้อ 4 ถ้า Total_score >= 50 และ Total_Score <=59 ให้ Grade = D ไปทำงานข้อ 4 ถ้า Total_score < 50 ให้ Grade = F ไปทำงานข้อ 4 พิมพ์ผลลัพธ์ Std_ID , Std_Name , Total_Score , Grade ทีละรายการ กลับไปทำข้อ 1 เพื่ออ่านข้อมูลคนต่อไปจนครบทุกรายการ ไปทำงานข้อ 6 จบการทำงาน

รับค่า Std_ID , Std_name , Mid_score , Final_score START 3 รับค่า Std_ID , Std_name , Mid_score , Final_score Total_score = Mid_score + Final_score Total_score >=80 Yes Grade = ‘A’ No Total_score >=70 AND Total_score <=79 Yes Grade = ‘B’ No Total_score >=60 AND Total_score <=69 Yes Grade = ‘C’ No 1 2

1 2 3 Yes Grade = ‘D’ No Grade = ‘F’ No Yes STOP พิมพ์ Std_ID , Total_score >=50 AND Total_score <=59 Yes Grade = ‘D’ 3 No Grade = ‘F’ พิมพ์ Std_ID , Std_name , Total_score , Grade พิมพ์ (หยุดทำรายการ?) รับ Answer No Answer = ‘y’ Yes STOP

ตัวอย่างที่ 6 โจทย์ จงเขียนโปรแกรมเพื่อคำนวณหาสูตรคูณ โดยการรับแม่สูตรคูณจากผู้ใช้ทางคีย์บอร์ด สิ่งที่โจทย์ต้องการ : สูตรคูณ รูปแบบผลลัพธ์ สูตรคูณแม่ : 10 <รับค่าจากผู้ใช้ สมมุติว่าป้อนแม่ 10> 10 x 1 = 10 10 x 2 = 20 .... 10 x 12 = 120

3. ข้อมูลนำเข้า ตัวเลขแม่สูตรคูณ 4. กำหนดตัวแปรที่ใช้ N = ตัวเลขแม่สูตรคูณ Mul = เก็บผลการคูณ i = ตัวแปรใช้นับจำนวนรอบตั้งแต่ 1 - 12

5. การประมวลผล 1. กำหนดค่าเริ่มต้นให้ Mul = 0 , i = 1 2. รับค่าตัวแปร N 3. Mul = N * i 4. พิมพ์ค่า N , i , Mul 5. เพิ่มรอบการทำงานโดยกำหนดให้ i = i + 1 6. เปรียบเทียบค่า i ดังนี้ - ถ้า i <= 12 กลับไปทำข้อ 3 - ถ้า i > 12 ไปทำข้อ 7 7. จบการทำงาน

Repeat … Until While …Do START START Mul = 0 I = 1 Mul = 0 I = 1 Mul = N * I I <= 12 No Yes STOP พิมพ์ Mul , N , I Mul = N * I I = I + 1 พิมพ์ Mul , N , I No I > 12 I = I + 1 Yes STOP

For START Mul = 0 รับค่า N For I = 1 , 12 Mul = N * I Next I STOP