小韦老师@神犇营-my0072-小码猿寄快递

博客围绕小码猿寄快递费用计算展开,快递公司收费依重量、是否加急和是否为贵重物品而定。给出了输入输出要求,解题思路是先根据重量算基础费用,再根据加急和物品贵重情况加价,最后保留3位小数输出费用,使用C++语言实现。

小韦老师@神犇营-my0072-小码猿寄快递

题目:

描述

小码猿要去寄快递,快递公司收费的标准如下:

5 千克(包括 5 千克)以内的价格为每千克 10.2 元,超过 5 千克的价格为每千克 7.5 元。如果加急,要加 10 元钱。如果是贵重物品,要加 20 元钱。

请你写一个程序,帮小码猿计算所要付的快递费。

输入

输入为 3 行,第一行输入一个正数,为快递的重量(单位是千克,小于等于 100 千克)。

第二行的输入表示快递是否加急,若输入 y,则说明快递加急;若输入 n,则说明快递不加急。

第三行的输入表示寄的物品是否为贵重物品,若输入 Y,则说明寄的是贵重物品;若输入 N,则说明寄的不是贵重物品。

输出

输出仅一行,为所需支付的快递费。输出保留 3 位小数。

输入样例1

13
y
Y

输出样例1

127.500

题解:

思路

整体思路:
根据重量算出相应的费用;然后根据是否加急,决定要不要再加 10 块钱;
再根据是否为贵重物品,决定要不要再加 20 块钱。
具体步骤:
1.先定义两个 double 型的变量,分别用来存储重量和费用:

    double weight, cost = 0;

2.再定义两个 char 型的变量,用来存储输入的字符(y/n, Y/N):

    char j;  // 加急
    char g;  // 贵重

3.输入重量,是否加急,是否为贵重物品:

    cin >> weight >> j >> g; 

4.如果重量小于等于 5,则费用 = 重量 * 10.2;否则费用 = 重量 * 7.5:

    if (weight <= 5) {
    cost = weight * 10.2;
    } else {
    cost = weight * 7.5;
    }

5.如果是加急(也就是说,第二个输进来的是 y),则费用加 10:

    if (j == 'y') {
    cost += 10;
    }

6.如果是贵重物品(也就是说,第三个输进来的是 Y),则费用加 20:

    if (g == 'Y') {
    cost += 20;
    }

7.把费用保留 3 位小数输出:

    printf("%.3f", cost);
完整代码
#include <bits/stdc++.h>

using namespace std;

int main() {

	double weight, cost = 0;
	char j;  // 加急
	char g;  // 贵重 
	cin >> weight >> j >> g;
	if (weight <= 5) {
		cost = weight * 10.2;
	} else {
		cost = weight * 7.5;
	}
	if (j == 'y') {
		cost += 10;
	}
	if (g == 'Y') {
		cost += 20;
	}
	printf("%.3f", cost);

	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值