设计佣金问题的程序
commission方法是用来计算销售佣金的需求,手机配件的销售商,手机配件有耳机(headphone)、手机壳(Mobile phone shell)、手机贴膜(Cellphone screen protector)三个部件,每个部件单价为:耳机80元,手机壳10元,手机贴膜8元,每月月末向制造商报告销量,制造商根据销量给销售商佣金。如果销售额不足1000元按10%提取佣金,1000-1800元部分按15%提取佣金,超过1800元部分按20%提取佣金。
程序要求:
1)先显示“请分别输入三种手机配件的销售情况:”
2)不满足条件,返回:“输入数量不满足要求”,返回重新输入;
3)条件均满足, 则返回佣金额。返回等待输入。
float commission (int headphone, int shell, int protector)
public class MonyCount {
/**
* @param args */ //用于判断输入是否正确 static boolean charge(String headphone, String shell, String protector){ if(Integer.valueOf(headphone).intValue()<0|| Integer.valueOf(shell).intValue()<0|| Integer.valueOf(protector).intValue()<0){ System.out.println("输入数量不满足要求"); return false; }else{ return true; } } static //计算佣金的公式 float commission (String Headphone, String Shell, String Protector){ //实现字符串到数字的转化 int headphone=0; int shell=0; int protector=0; try { headphone = Integer.valueOf(Headphone).intValue(); shell= Integer.valueOf(Shell).intValue(); protector= Integer.valueOf(Protector).intValue(); } catch (NumberFormatException e) { e.printStackTrace(); } int total=0; float money=0; total=80*headphone+10*shell+8*protector; if(total<1000){ money=(float) (total*0.1); } if(total>=1000&&total<1800){ money=(float) (total*0.15); } if(money>=1800){ money=(float) (1800*0.15+(total-1800)*0.2); } return money; } public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); String headphone; String shell; String protector; float count;//用于输出计算后得到的佣金 //分别对输入的数值进行校验 while(true){ System.out.println("请分别输入三种手机配件的销售情况:"); headphone=sc.next(); shell=sc.next(); protector=sc.next(); //改函数用于判断输入是否符合规范 if(!charge(headphone,shell,protector)){ continue; } count=commission(headphone,shell,protector); System.out.println("应支付的佣金为:"+count); } }}