ภาพรวมปัญหา
ในปัญหานี้ เราได้รับข้อมูล 4 ตัวเลขที่กำหนดราคารวม (TotalPrice) และอัตราส่วนของเหรียญ 1 บาท, 50 สตางค์, และ 25 สตางค์ในกระเป๋า งานของเราคือการสร้าง โปรแกรมหาจำนวนเหรียญแต่ละประเภทจากอัตราส่วนที่กำหนดใน C++
คำอธิบายโค้ด
เราต้องใช้เหรียญ 1 บาท, 50 สตางค์ และ 25 สตางค์จากกระเป๋าเพื่อให้ได้ผลรวมของมูลค่าเหรียญเท่ากับราคารวมที่กำหนด
ตัวอย่างเพื่อความเข้าใจ
Input
TotalPrice = 225, 1Rs = 2, 50P = 3, 25P = 4
Output
1 Rs coin = 100 50 P coin = 150 25 P coin = 200
คำอธิบาย
พิจารณาจากอัตราส่วน มูลค่าของเหรียญที่ประกอบขึ้น:
เหรียญ 1 บาท 2X, เหรียญ 50 สตางค์ 1.5X, เหรียญ 25 สตางค์ 1X
ผลรวมมูลค่าทั้งหมด = 225
2X + 1.5X + 1X = 225 → 4.5X = 225 → X = 225/4.5 = 50
- มูลค่าเหรียญ 1 บาท = 100, จำนวน 100 เหรียญ
- มูลค่าเหรียญ 50 สตางค์ = 75, จำนวน 150 เหรียญ
- มูลค่าเหรียญ 25 สตางค์ = 50, จำนวน 200 เหรียญ
แนวทางแก้ปัญหา
ตามคำอธิบาย เราจะหามูลค่าที่แต่ละเหรียญมีส่วนร่วมในผลรวม แล้วคำนวณจำนวนเหรียญแต่ละประเภทจากมูลค่านั้น สำหรับเหรียญ 1 บาท X คือจำนวนเหรียญ สำหรับเหรียญ 50 สตางค์ 2X คือจำนวนเหรียญ สำหรับเหรียญ 25 สตางค์ 4X คือจำนวนเหรียญ
ตัวอย่างโปรแกรม
#include <iostream>
using namespace std;
int CalcCoinValue(int totalPrice, int re1, int p50, int p25) {
float val1Coin = (re1 * 1.0);
float val50pCoin = (p50 / 2.0);
float val25pCoin = (p25 / 4.0);
int result = totalPrice / (val1Coin + val50pCoin + val25pCoin);
return result;
}
int main() {
int totalPrice = 225;
int re1 = 2, p50 = 3, p25 = 4;
int coinValue = CalcCoinValue(totalPrice, re1, p50, p25);
cout << "Count of 1 rupee coin = " << (coinValue * re1) << endl;
cout << "Count of 50 paise coin = " << (coinValue * p50) << endl;
cout << "Count of 25 paise coin = " << (coinValue * p25) << endl;
return 0;
}
Output
Count of 1 rupee coin = 100 Count of 50 paise coin = 150 Count of 25 paise coin = 200