计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。帮我写C++代码
时间: 2023-02-23 22:34:39 浏览: 85
好的,这是一段计算邮费的C语言代码:
```
#include<stdio.h>
int main()
{
int weight;
int is_urgent;
int fee;
printf("请输入物品重量(克):");
scanf("%d", &weight);
printf("是否加急?(是:1,否:0):");
scanf("%d", &is_urgent);
fee = 8;
if (weight > 1000) {
int extra_weight = weight - 1000;
int extra_fee = (extra_weight + 500 - 1) / 500 * 4;
fee += extra_fee;
}
if (is_urgent) {
fee += 5;
}
printf("邮费为:%d元\n", fee);
return 0;
}
```
这段代码实现了计算邮费的功能,按照你提供的规则计算。希望对您有所帮助。
相关问题
根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加
### 回答1:
急邮寄, 邮费将每件加收5元的加急费。
举个例子,如果邮件重量为1200克,且用户选择了加急邮寄,邮费应该是 8元 + (1200克 - 1000克) / 500克 * 4元 + 5元 = 12元 + 5元 = 17元。
### 回答2:
急,则在原有计费基础上加收5元加急费用。
根据上述规则,计算邮费的步骤如下:
1. 首先判断邮件的重量是否在1000克以内。
- 如果是,邮费为基本费8元。
- 如果不是,则继续往下计算。
2. 计算超重费用部分。
- 首先将邮件的重量减去1000克得到超过1000克的部分重量。
- 然后将超重部分除以500克得到超重的500克倍数,再乘以4元得到超重费用。
3. 计算不足500克部分。
- 首先将邮件的重量除以500克取整数部分得到不足500克的倍数。
- 然后判断是否有不足500克的部分,如果有,则加上500克计算。
4. 将基本费用、超重费用和不足500克部分费用相加,得到总的邮费。
5. 如果用户选择加急,则在总的邮费上再加上5元加急费用。
通过上述计算方法,可以根据邮件的重量和用户是否选择加急准确计算出对应的邮费。
### 回答3:
急,每件邮件另外加收5元。根据这个规则,我们可以先判断用户是否选择了加急,如果选择了加急,邮费在基本费的基础上每件邮件需要额外加5元。然后再判断邮件的重量是否超过1000克,如果超过了1000克,需要根据超重的部分计算超重费。超重费的计算是每500克加收4元,不足500克的部分按照500克计算。
假设一个用户选择了加急且重量为800克的邮件,根据计算规则,这封邮件的基本费为8元,由于选择了加急,需要额外加收5元,所以总共需要支付13元的邮费。
再假设一个用户选择了加急且重量为1200克的邮件,根据计算规则,这封邮件的基本费为8元,由于选择了加急,需要额外加收5元。超过1000克的部分为200克,按照每500克加收4元的规则,计算出超重费为8元,所以总共需要支付21元的邮费。
通过这样的计费规则,我们可以根据用户选择的加急和邮件的重量来计算出准确的邮费,提供给用户参考和支付。这样能够合理确定邮费,既满足用户的需求,也能够保证邮件寄送的效率和服务质量。
用C++语言编写:根据邮件的重量和是否选择加急计算邮费。 计算规则:重量在 1000 克以内(包括 1000 克),基本费 8 元。 超过 1000 克的部分,每 500克加收超重费 4 元,不足 500克部分按 500克计算; 如果选择加急,多收5 元
以下是基于题目要求的 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int weight;
bool isUrgent;
double price = 8.0;
cout << "Please enter the weight of the mail in grams: ";
cin >> weight;
if (weight <= 1000) {
// 重量在 1000 克以内(包括 1000 克),基本费 8 元
cout << "The basic fee for this mail is 8 yuan." << endl;
} else {
// 超过 1000 克的部分,每 500 克加收超重费 4 元,不足 500 克部分按 500 克计算
int extraWeight = weight - 1000;
int extraFee = (extraWeight / 500) * 4;
if (extraWeight % 500 != 0) {
extraFee += 4;
}
price += extraFee;
cout << "The basic fee for this mail is 8 yuan. "
<< "The extra weight fee is " << extraFee << " yuan." << endl;
}
cout << "Would you like to choose urgent service? (0 for no, 1 for yes) ";
cin >> isUrgent;
if (isUrgent) {
// 如果选择加急,多收5元
price += 5.0;
cout << "The urgent service fee is 5 yuan." << endl;
}
cout << "The total price for this mail is " << price << " yuan." << endl;
return 0;
}
```
你可以根据自己的需要进行修改和调整。