3. การเขียนโปรแกรมคอมพิวเตอร์จากอัลกอริทึม
อัลกอริทึม (Algorithm) คือ กระบวนการในการทำงานที่ใช้การตัดสินใจด้วยหลักเหตุผลและคณิตศาสตร์ เป็นตัวช่วยในการเลือกวิธีการหรือขั้นตอนการดำเนินงานถึงขั้นตอนสุดท้ายเป็นวิธีที่ใช้การแยกย่อยและเรียงลำดับขั้นตอนของกระบวนการในการทำงานต่างๆ เพื่อเพิ่มประสิทธิภาพในการค้นหาและแก้ไขปัญหา
โดยอัลกอริทึมจะเป็นกระบวนการแก้ปํญหาที่สามารถเข้าใจได้ มีลำดับและวิธีการในการแก้ปัญหาอย่างเป็นขั้นตอนและชัดเจน
3.1 การเขียนโปรแกรมคอมพิวเตอร์จากอัลกอริทึม
คือ การแปลงจากอัลกอริทึมรูปแบบต่างๆ ให้เป็นการเขียนชุดคำสั่งด้วยภาษาคอมพิวเตอร์
1) แปลงรหัสจำลองการนำเข้าข้อมูล INPUT width และ INPUT length เป็นชุดคำสั่งภาษาซีเพื่อประกาศตัวแปร และนำเข้าข้อมูล ดังนี้
-
ประกาศตัวแปร : int width,length,area;
- นำเข้าข้อมูล :
printf ("Enter width :");
scanf ("%d", &width);
printf ("Enter longs :");
scanf ("%d", &length);
2) แปลงรหัสจำลองการประมวลผล computer area =
width x length เป็นชุดคำสั่งภาษาซี ดังนี้ area = width x length;
3) แปลงรหัสจำลองการแสดงผลข้อมูลหรือการนำเข้าข้อมูลออก OUTPUT area เป็นชุดคำสั่งภาษาซี ดังนี้ printf("Square area is : %d\n",area);
3.2 กรณีศึกษาการเขียนโปรแกรมคอมพิวเตอร์
กรณีศึกษาที่ 1 ร้านขายอุปกรณ์การเรียนแห่งหนึ่งกำลังจัดโปรโมชันส่วนลดสินค้า โดยสินค้าทุกชิ้นจะมีส่วนลด 10% (ร้อยละ 10) จากราคาปกติ เช่น ดินสอไม้กล่องละ 200 บาท ส่วนลด 10% คิดเป็นส่วนลดกี่บาท โดยต้องการเขียนโปรแกรมคอมพิวเตอร์เพื่อคำนวณหาส่วนลดของสินค้า โดยนำข้อมูลเข้าราคาสินค้าปกติจากแป้นพิมพ์
1) กำหนดวัตถุประสงค์ของโปรแกรมคอมพิวเตอร์
-
เพื่อคำนวณหาส่วนลดราคาสินค้า
2) กำหนดลักษณะข้อมูลนำเข้า (input)
- ข้อมูลราคาสินค้าปกติ เป็นประเภทเลขจำนวนเต็ม
- กำหนดข้อมูลนำเข้าเป็นตัวแปร
- price แทนข้อมูลราคาสินค้าปกติ
3) กำหนดลักษณะข้อมูลนำออก (output)
- ข้อมูลส่วนลด
เป็นประเภทตัวเลข
- กำหนดข้อมูลนำออกเป็นตัวแปร โดยให้ discount
แทนข้อมูลส่วนลด
4) กำหนดวิธีการประมวลผล (process)
- ขั้นตอนที่ 1 ผลลัพธ์ชั่วคราว = ราคาสินค้าปกติ/100
- กำหนดวิธีการประมวลผลเป็นสมการได้ ดังนี้ temp = price / 100
- ขั้นตอนที่ 2 ส่วนลด = เปอร์เซ็นต์ส่วนลด x ผลลัพธ์ชั่วคราว
- กำหนดวิธีการประมวลผลเป็นสมการได้ ดังนี้ discount = 10 x temp
ขั้นตอนที่ 2 การออกแบบโปรแกรม
1)ออกแบบอัลกอริทึม
รูปแบบการเขียนโปรแกรม : โครงสร้างการทำงานแบบเรียงลำดับ (sequence structure)
โดยโปรแกรมคำนวณส่วนลดนี้มีการใช้ตัวแปร ดังนี้
- price แทนราคาสินค้าปกติ - temp แทนผลลัพธ์ชั่วคราว - discount แทนส่วนลด