สวัสดีครับ น้องๆ ตัวอย่างโจทย์ C++ ในข้อนี้ จะเกี่ยวข้องกับคณิตศาสตร์นิดหน่อยคือการหาร้อยละหรือเปอร์เซนต์ แล้วเราจะนำค่าร้อยละนั้นมาตรวจสอบด้วย If Else ครับ เป็นตัวอย่างที่น่าสนใจสำหรับมือใหม่มากๆ เอาล่ะครับมาลองดูโจทย์กันดีกว่า ^^
โจทย์
จงเขียนโปรแกรมตรวจคะแนนสอบของนักเรียนว่าสอบผ่านหรือไม่ โดยโปรแกรมนี้จะรับค่า คะแนนที่นักเรียนสอบได้ กับ คะแนนเต็ม เข้าไปในโปรแกรม และตรวจสอบว่าคะแนนที่ได้นั้นเกิน 50% หรือไม่ ถ้ามากกว่าหรือเท่ากับ 50% ถือว่าสอบผ่าน
หลักการและแนวคิด
จะรู้ได้อย่างไรว่า คะแนนที่นักเรียนสอบได้ เป็นกี่ % ของคะแนนเต็ม
การหาว่าคะแนนที่ได้ เป็นกี่ % ของคะแนนเต็ม เราจะใช้สูตรทางคณิตศาสตร์ดังนี้ (คะแนนที่ได้ / คะแนนเต็ม) x 100 ซึ่งจะเป็นสูตรการหาร้อยละหรือการหาเปอร์เซ็นนั่นเอง ตัวอย่างเช่น
คะแนนที่ได้ 10 คะแนนเต็ม 100 เมื่อนำมาหา % จะได้ (10 / 100) x 100 คือ 10%
คะแนนที่ได้ 25 คะแนนเต็ม 50 เมื่อนำมาหา % จะได้ (25 / 50) x 100 คือ 50%
Source Code
#include <iostream>
using namespace std;int main()
{
const float PASS_PERCENT = 50.0;
float student_score,max_score,student_percent;cout << "Enter student score : ";
cin >> student_score;
cout << "Enter max score : ";
cin >> max_score;
student_percent = (student_score / max_score) * 100.0;
cout << student_percent << "% ";
if(student_percent >= PASS_PERCENT)
{
cout << "Pass";
}
else
{
cout << "Fail";
}cout << endl << endl;
system("pause");
return 0;
}
อธิบาย Source Code
#include <iostream>
using namespace std;int main()
{
//ประกาศค่าคงที่เก็บ % ที่ผ่าน
const float PASS_PERCENT = 50.0;
//ประกาศตัวแปร
// student_score เก็บคะแนนนักเรียน
// max_score เก็บคะแนนเต็ม
// student_percent เก็บ % ที่คำนวณได้
float student_score,max_score,student_percent;//แสดงผลรับค่าคะแนนนักเรียน
cout << "Enter student score : ";
//รับค่าคะแนนนักเรียนลงตัวแปร student_score
cin >> student_score;
//แสดงผลรับค่าคะแนนเต็ม
cout << "Enter max score : ";
//รับค่าคะแนนนักเรียนลงตัวแปร max_score
cin >> max_score;
// หา % ด้วยสูตร (คะแนนที่ได้ / คะแนนเต็ม) x 100.0
student_percent = (student_score / max_score) * 100.0;
// แสดงค่า % ที่ได้
cout << student_percent << "% ";
// ตรวจสอบว่า % ที่ได้ มากกว่าหรือเท่ากับ %ที่ผ่านใช่หรือไม่
if(student_percent >= PASS_PERCENT)
{
//จริง
//แสดงว่าผ่าน
cout << "Pass";
}
else
{
//เท็จ
//แสดงว่าไม่ผ่าน
cout << "Fail";
}//ใช้สำหรับหยุดหน้าจอ ให้แสดงผลลัพธ์ค้างไว้
cout << endl << endl;
system("pause");
return 0;
}
Flowchart
ตัวอย่างการ Run โปรแกรม
ตัวอย่างการ Run ครั้งที่ 1
ทดสอบ กรอก คะแนนที่ได้ 25 คะแนนเต็ม 50 (25 / 50) x 100 ได้ 50%
ตัวอย่างการ Run ครั้งที่ 2
ทดสอบ กรอก คะแนนที่ได้ 10 คะแนนเต็ม 100 (10 / 100) x 100 ได้ 10%
เป็นยังไงบ้างครับข้อนี้ มีการใช้สูตรคณิตศาสตร์ในการหาร้อยละหรือหาเปอร์เซ็นเข้ามาเกี่ยวข้องด้วย น้องๆ บางคนที่อยากลองหัดเขียนโปรแกรม แล้วคิดว่าถ้าไม่เก่งเลข เราจะเขียนได้ไหม ไม่ต้องกังวลครับ สูตรคณิตศาสตร์พวกนี้เราสามารถหาได้จาก Internet ที่สำคัญคือเราต้องสามารถแปลงมาเป็นสูตรหรือนิพจน์ทางคอมพิวเตอร์ได้ เพื่อให้สามารถนำมาใช้กับโปรแกรมของเราได้นั่นเองครับ
น้องๆ ที่มีข้อสงสัยสามารถเข้ามาสอบถามได้ที่ Fanpage ของ TUTORTONG สอนเขียนโปรแกรม ได้เลยครับ แล้วจะรู้ว่าเขียนโปรแกรมไม่ยากอย่างที่คิด มาสนุกกับการเขียนโปรแกรมไปกับเราที่ TUTORTONG สอนเขียนโปรแกรมกันนะครับ ^^