C++ Programming : ตัวอย่างโจทย์โปรแกรมคำนวณเงินเดือน

ทิป & เทคนิค #136
เขียนโดย :
มีผู้อ่าน : 29,231 คน วันนี้ : 22 คน

สวัสดีครับ น้องๆ โจทย์ตัวอย่างภาษา C++ ข้อนี้ มาเบาๆ กันกับ การเขียนโปรแกรมคำนวณเงินเดือนของพนักงาน เทคนิคที่ใช้ไม่มีอะไรมากครับ มีการแสดงผล รับข้อมูล การตัดสินใจ และการตรวจสอบข้อมูล ตามเงื่อนไขที่โจทย์กำหนดให้ เอาล่ะครับมาลองทำกันดูดีกว่า ข้อนี้เหมาะสำหรับผู้เริ่มต้นมากๆ ครับ ^^

 

โจทย์

จงเขียนโปรแกรมคำนวณเงินเดือนของพนักงาน โดยมีข้อกำหนดดังนี้ ให้มีการรับเงินเดือนพนักงานผ่านทางคีย์บอร์ดและทำการถามผู้ใช้ว่าพนักงานคนนี้เข้างานสายหรือไม่ ถ้าไม่ เพิ่มเงินเดือนอีก 1,000 บาท และถามผู้ใช้อีกว่าพนักงานคนนี้มี OT หรือไม่ ถ้ามีทำการรับค่าชั่วโมง OT โดย OT ของบริษัทนี้ได้ชั่วโมงละ 200 บาท 

 

Source Code

#include <iostream>
using namespace std;

int main()
{
    int salary,ot_hour;
    char choice_late,choice_OT;
    
    cout << "Enter Salary : ";
    cin >> salary;
    
    do
    {
       cout << "Has Late (Y/N) : ";
       cin >> choice_late;
    }
    while(!(choice_late == 'Y' || choice_late == 'y' || choice_late == 'N' || choice_late == 'n'));
    
    if(choice_late == 'N' || choice_late == 'n')
    {
       salary = salary + 1000;            
    }
    
    do
    {
       cout << "Has OT Hour (Y/N) : ";
       cin >> choice_OT;
    }
    while(!(choice_OT == 'Y' || choice_OT == 'y' || choice_OT == 'N' || choice_OT == 'n'));
    
    if(choice_OT == 'Y' || choice_OT == 'y')
    {
       cout << "Enter OT Hour : ";
       cin >> ot_hour;
       salary = salary + (ot_hour * 200);      
    }
  
    cout << "Salary : " << salary;
    
   
    cout << endl << endl;
    system("pause");
   
    return 0;
}

 

อธิบาย Source Code

#include <iostream>
using namespace std;

int main()
{
    //ประกาศตัวแปร
    // salary เก็บเงินเดือน , ot_hour เก็บจำนวนชั่วโมง OT
    // choice_late เก็บคำตอบเรื่องมาสาย , choice_OT เก็บคำตอบเรื่อง OT

    int salary,ot_hour;
    char choice_late,choice_OT;
    
    cout << "Enter Salary : "; //แสดงผลการรับค่าเงินเดือน
    cin >> salary; //รับค่าเงินเดือน
    
    do
    {
       cout << "Has Late (Y/N) : "; //แสดงผลถามว่ามีสายไหม ?
       cin >> choice_late; //รับค่าตัวอักษร
    }
    //ตรวจสอบ ถ้า choice_late เป็น Y,y,N,n หรือไม่ ถ้าไม่เป็นวนรับซ้ำ
    while(!(choice_late == 'Y' || choice_late == 'y' || choice_late == 'N' || choice_late == 'n'));
    
    //ตรวจสอบว่า ไม่มีการ มาสาย ใช่หรือไม่
    if(choice_late == 'N' || choice_late == 'n')
    {
          //ถ้าจริง
         // เพิ่มเงินเดือน 1000
         salary = salary + 1000;            
    }
    
    do
    {
       cout << "Has OT Hour (Y/N) : "; //แสดงผลว่า มี OT ไหม
       cin >> choice_OT; //รับค่าตัวอักษร
    }
    //ตรวจสอบ ถ้า choice_late เป็น Y,y,N,n หรือไม่ ถ้าไม่เป็นวนรับซ้ำ
    while(!(choice_OT == 'Y' || choice_OT == 'y' || choice_OT == 'N' || choice_OT == 'n'));
    
    //ตรวจสอบว่า มี OT ใช่หรือไม่
    if(choice_OT == 'Y' || choice_OT == 'y')
    {
       //ถ้าจริง
       cout << "Enter OT Hour : "; //แสดงผลรับชั่วโมง
       cin >> ot_hour; //รับค่าชั่วโมง
       salary = salary + (ot_hour * 200); //คำนวณหา OT แล้วบวกรวมกับเงินเดือน
    }
  
    cout << "Salary : " << salary; //แสดงค่า เงินเดือน
    
    //ใช้สำหรับหยุดหน้าจอ ให้แสดงผลลัพธ์ค้างไว้
    cout << endl << endl;
    system("pause");
   
    return 0;
}

 

ตัวอย่างการ Run โปรแกรม

ตัวอย่างการ Run ครั้งที่ 1

ทดสอบ เงินเดือน 10,000 ไม่สาย ไม่ทำ OT

C++ Programming : ตัวอย่างโจทย์โปรแกรมคำนวณเงินเดือน

 

ตัวอย่างการ Run ครั้งที่ 2

ทดสอบ เงินเดือน 10,000 สาย ไม่ทำ OT

C++ Programming : ตัวอย่างโจทย์โปรแกรมคำนวณเงินเดือน

 

ตัวอย่างการ Run ครั้งที่ 3

ทดสอบ เงินเดือน 20,000 ไม่สาย ทำ OT 5 ชั่วโมง

C++ Programming : ตัวอย่างโจทย์โปรแกรมคำนวณเงินเดือน

ตัวอย่างการ Run ครั้งที่ 4

ทดสอบ เงินเดือน 20,000 ไม่สาย (ทดสอบไม่กรอก Y,y,N,n) ไม่ทำ OT 

C++ Programming : ตัวอย่างโจทย์โปรแกรมคำนวณเงินเดือน

 

เป็นยังไงบ้างครับ ข้อนี้ ได้อะไรดีๆ หลายอย่างเลยทีเดียว ทั้งการคำนวณแบบเก็บค่า การตรวจสอบข้อมูลให้ถูกต้องก่อนทำงานขั้นต่อไป ลองนำไปใช้กับโปรแกรมของน้องๆ กันดูนะครับ

หากน้องๆ มีข้อสงสัยสามารถเข้ามาสอบถามได้ที่ Fanpage TUTORTONG สอนเขียนโปรแกรมได้เลยครับ าสนุกกับการเขียนโปรแกรมไปกับเราที่ TUTORTONG สอนเขียนโปรแกรม ครับ