题目:收银柜台收款小程序
要求:
1.如果购物金额大于500,可享受8折优惠。
2.输出商品总价,找零数
3.如果所附的钱数不够,应提醒你还差多少钱
public class project {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//step1:定义输入变量:单价,数量,收款金额
double price,amount,money;
//step2:定义输出变量:总价,找零
double total,change;
//step3:分别提示用户输入三个值,并保存到对应变量中
/*如何获得用户从控制台输入的数据
* 1.获取控制台输入的数据,就要用scanner
* 什么是scanner:专门获取用户输入的Java API
* 2.如何使用scanner:固定套路,记住即可
*
* */
Scanner sc=new Scanner(System.in);
//冒红原因:默认是不能使用的
//解决方法:点×,导入相应的包即可
//提示用户:请输入xxx
System.out.println("请输入商品单价");
//然后,使用sc获得数据
price=sc.nextDouble();
//程序运行到此,会暂停,等待用户输入
//如果用户在控制台输入了数据,就会按回车
//sc的nextDouble()方法,会将用户输入的数据保存到price变量中
//程序继续运行
//强调:sc有很多方法,但是nextxxx()方法一定要和赋值的变量数据类型匹配。
System.out.println("请输入购买数量");
amount=sc.nextDouble();
System.out.println("请输入收款金额");
money=sc.nextDouble();
//阶段测试
System.out.println(price+","+amount+","+money);
//也叫打桩:在某个阶段测试程序能否正常运行
// 可以通过打印变量内容来验证阶段程序是否正确
//到此,三个输入变量中都得到了用户输入的数据
//step4:使用变量price*amount=总价,保存到total中
total=price*amount;
/*step5:判断变量是否超过500
* 如果超过,则返回total*0.8;
* 否则返回total;
* 无论判断结果是什么,都要保存回变量total中
*/
total=total>500?total*0.8:total;
//step6:使用变量money-total=找零,保存到change中
//说明,暂时不考虑money小于total的情况
if (money>total){
change=money-total;
//step7:按照用户要求 ,输出结果
System.out.println("应收金额"+String.format("%.2f", total));
System.out.println("找零"+change);
}
else
{
System.out.println("你还差"+(total-money));
}
}
}