根据用户的"包裹参数"计算运费
运费计算的业务说明:
一个包裹的参数包括:重量(kg)、长度(cm)、宽度(cm)、高度(cm)。
邮寄包裹的规格需满足:
重量不大于200kg,长度不大于200cm,宽度不大于200cm,高度不大于200cm。
包裹邮费计算规则:
首重是2元。
重量小于100kg,费用 = 续重,0.8元/kg。
重量在100kg~150kg之间,费用 = 续重,0.75元/kg。
重量超过150kg,费用 = 续重,0.7元/kg。
计算规则:运费 = 首重 + 续重。
1)类名:TestPost
2)获取用户输入的包裹参数。
提示语句为:“输入包裹的数据:”。
重量输入提示语句为:“输入包裹的重量(kg):”。
长度输入提示语句为:“输入包裹长度(cm):”。
宽度输入提示语句为:“输入包裹宽度(cm):”。
高度输入提示语句为:“输入包裹高度(cm):”。
3)包裹参数的有效性判断:
限制1. 有效性判断函数取名:checkPost。
限制2. 有效性判断函数定义于TestPost类内。
判断包裹参数:重量、长度、宽度、高度任意数据大于200均返回false。
否则返回true。 如果包裹参数不符合邮寄规定,则输出:“该包裹不符邮寄规定!”。
4)计算运费:
限制1. 运费计算函数取名:getMoney。
限制2. 运费计算函数定义于TestPost类内。
根据《包裹邮费计算规则》返回运费计算结果。
5) 打印结果:
“邮寄重量是:” + 包裹重量 + “(kg)”。
“邮寄费用是”运费“。
代码:
package cn.wzu.dsj.shiyan3;
import java.util.*;
public class TestPost {
public static void main(String args[]){
System.out.println("输入包裹的数据:");
Scanner in=new Scanner(System.in);
System.out.println("输入包裹的重量(kg):");
float weight=in.nextFloat();
System.out.println("输入包裹的长度(cm):");
float leng=in.nextFloat();
System.out.println("输入包裹的宽度(cm):");
float width=in.nextFloat();
System.out.println("输入包裹的高度(cm):");
float height=in.nextFloat();
boolean flag=CheckPost(weight,leng,width,height);
if(!flag){
System.out.println("该包裹不符邮寄规定!");
return ;
}
double money=getMoney(weight);
System.out.println("邮寄重量是:"+weight+"(kg)");
System.out.println("邮寄费用为"+money+"元");
}
public static boolean CheckPost(float weight,float leng,float width,float height){
if(weight>200||leng>200||width>200||height>200){
return false;
}
return true;
}
public static double getMoney(double weight){
double money=2.0;
if(weight<100){
money=money+weight*0.8;
}
else if(weight>=100&&weight<=150){
money=money+weight*0.75;
}
else{
money=money+weight*0.7;
}
return money;
}
}