请用C++语言完成该程序:编写函数double MedicalReimbursement( double totalFee, double outerFee, double startLine, double rbRatio, double capLine),计算患者可报销的医疗费用,其中: 1)totalFee表示治疗总费用, 2)outerFee表示报销范围外的费用, 3)startLine表示起付线, 4)rbRatio表示报销比例, 5)capLine表示封顶线。 医疗可报销费用可用下面公式计算:
时间: 2024-02-19 21:03:25 浏览: 21
以下是用C++实现的MedicalReimbursement函数:
```c++
#include <iostream>
using namespace std;
double MedicalReimbursement(double totalFee, double outerFee, double startLine, double rbRatio, double capLine) {
double reimbursableFee = 0; // 可报销费用
double personalFee = totalFee - outerFee; // 个人自付费用
if (personalFee < startLine) { // 个人自付费用小于起付线
reimbursableFee = 0;
} else if (personalFee >= startLine && personalFee <= capLine) { // 个人自付费用在起付线和封顶线之间
reimbursableFee = (personalFee - startLine) * rbRatio;
} else if (personalFee > capLine) { // 个人自付费用超过封顶线
reimbursableFee = (capLine - startLine) * rbRatio;
}
return reimbursableFee;
}
int main() {
double totalFee, outerFee, startLine, rbRatio, capLine;
cin >> totalFee >> outerFee >> startLine >> rbRatio >> capLine;
double reimbursableFee = MedicalReimbursement(totalFee, outerFee, startLine, rbRatio, capLine);
cout << reimbursableFee << endl;
return 0;
}
```
该程序中定义了一个MedicalReimbursement函数,根据题目给出的公式计算出可报销费用。主函数中读入参数并调用MedicalReimbursement函数,输出可报销费用。