C++ 实现找零问题:计算各面额货币数量程序解析
以下是一个简单的 C++ 程序,用于计算找零的金额和所需的各种面额的货币数量: ```cpp #include <iostream> void calculateChange(double totalAmount, double paidAmount) { double change = paidAmount - totalAmount; if (change < 0) { std::cout << "支付金额不足,请重新支付!" << std::endl; return; } int fiftyBills = 0, twentyBills = 0, tenBills = 0, fiveBills = 0, oneBills = 0; int fiftyCoins = 0, twentyFiveCoins = 0, tenCoins = 0, fiveCoins = 0, oneCoins = 0; // 计算各种面额纸币的数量 fiftyBills = static_cast<int>(change / 50.0); change -= fiftyBills * 50.0; twentyBills = static_cast<int>(change / 20.0); change -= twentyBills * 20.0; tenBills = static_cast<int>(change / 10.0); change -= tenBills * 10.0; fiveBills = static_cast<int>(change / 5.0); change -= fiveBills * 5.0; oneBills = static_cast<int>(change); // 计算各种面额硬币的数量 change = (change - oneBills) * 100; // 转换为分 fiftyCoins = static_cast<int>(change / 50); change -= fiftyCoins * 50; twentyFiveCoins = static_cast<int>(change / 25); change -= twentyFiveCoins * 25; tenCoins = static_cast<int>(change / 10); change -= tenCoins * 10; fiveCoins = static_cast<int>(change / 5); change -= fiveCoins * 5; oneCoins = static_cast<int>(change); // 输出找零结果 std::cout << "找零金额: " << paidAmount - totalAmount << std::endl; std::cout << "50 元纸币数量: " << fiftyBills << std::endl; std::cout << "20 元纸币数量: " << twentyBills << std::endl; std::cout << "10 元纸币数量: " << tenBills << std::endl; std::cout << "5 元纸币数量: " << fiveBills << std::endl; std::cout << "1 元纸币数量: " << oneBills << std::endl; std::cout << "50 分硬币数量: " << fiftyCoins << std::endl; std::cout << "25 分硬币数量: " << twentyFiveCoins << std::endl; std::cout << "10 分硬币数量: " << tenCoins << std::endl; std::cout << "5 分硬币数量: " << fiveCoins << std::endl; std::cout << "1 分硬币数量: " << oneCoins << std::endl; } int main() { double total, paid; std::cout << "请输入商品总价: "; std::cin >> total; std::cout << "请输入支付金额: "; std::cin >> paid; calculateChange(total, paid); return 0; } ``` 这个程序假设只存在 1 元、5 元、10 元、20 元、50 元的纸币和 1 分、5 分、10 分、25 分、50 分的硬币,你可以根据实际情况进行修改和完善。 ######[AI写代码神器 | 886点数解答 | 2024-10-17 15:50:55]
- 易语言读取文本文件并显示到超级列表框:代码示例与注意要点(DeepSeek | 571点数解答 | 2025-08-23 20:54:40)258
- 易语言:读取并显示特定文本到超级列表框,还能增加新数据的方法与要点(DeepSeek | 1317点数解答 | 2025-08-23 20:58:40)254
- mallshop商城网站:数据库设计与强大业务功能全揭秘(GPT | 257点数解答 | 2024-12-09 14:08:15)299
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)376
- Golang开发:解析JSON数据时数值默认类型及示例解析(百度文心 | 393点数解答 | 2023-11-09 18:13:06)304
- SQL Working Areas Sizing: Manual vs. Automatic Policy - A Comprehensive Analysis(阿里通义 | 530点数解答 | 2024-05-13 10:55:58)325
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)347
- C++ 代码实现自定义运算 x@y = x² + y² - xy 及 x@(x+y) 计算(DeepSeek | 215点数解答 | 2025-12-13 15:08:14)95
- C++ 实现根据输入正整数奇偶性计算偶数和或约数和(字节豆包 | 838点数解答 | 2026-02-28 20:23:59)53
- 用Python处理商品销售数据:替换类别、合并类目并输出前5行(百度文心 | 486点数解答 | 2024-08-23 09:14:21)324
- Python 破解:计算序列中满足特定取余条件元素的数量(字节豆包 | 174点数解答 | 2025-05-13 21:29:55)203
- 一文搞定!无名杀“再生安瓿”技能代码全解析及注意事项(字节豆包 | 464点数解答 | 2025-06-15 20:06:30)186