恶魔猎手 • 24天前
using namespace std;
int main() {
freopen("luggage.in", "r", stdin);
freopen("luggage.out", "w", stdout);
double a = 0, a1 = 0, b = 0, b1 = 0, c = 0;
int d = 0, k;
cin >> a >> b >> c;
if (a <= 20) {
d = d + 20;
} else {
a1 = a - 20;
k = a1 / 5;
d = d + 20 + k * 6;
}
if (b <= 200) {
d = d + 40;
} else {
b1 = b - 200;
k = b1 / 10;
d = d + 40 + k * 5;
}
if (c > 24) {
d = d + 10;
}
cout << d;
return 0;
}
评论:
#include <iostream>
using namespace std;
int main() {
freopen("postage.in", "r", stdin);
freopen("postage.out", "w", stdout);
// 读入物品的重量(m)、距离(d)、以及存放寄送物品纸箱的长、宽、高(a、b、c)
int a, b, c;
double m, d, money = 0;
cin >> m >> d >> a >> b >> c;
// 根据重量计费规则计算邮费
if (m > 1) {
int x = m + 0.999999; // 向上取整
money = 5 + (x - 1) * 0.5; // 超过1kg的部分,每增加1kg费用增加0.5元
} else
money = 5; // 1kg以内基础邮费为5元
// 根据距离计费规则计算邮费
if (d > 100) {
int y = d + 0.99999; // 向上取整
money = money + 5 + (y - 100) * 0.15; // 超过100km的部分,每增加1km费用增加0.15元
} else
money = money + 5; // 100km以内基础运费为5元
// 根据体积重量规则计算邮费
int f = a * b * c / 6000; // 计算体积重量
if (f > 10) {
int g = f / 10 - 1; // 超过10的部分,每增加10加收1元
money = money + g;
}
// 输出总邮费,保留两位小数
printf("%.2lf", money);
return 0;
}
请先登录,才能进行评论