java小案例:超市收银系统
超市收银
为超市开发一个简易的收银系统
提示用户输入商品编号和数量,然后显示总价多少钱
提示用户输入付款金额,然后显示找零多少
package cn.xtnotes.u3;
import java.util.Scanner;
public class T8_1 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
String num1="1";
String name1="苹果";
double price1=6.8;
String num2="2";
String name2="葡萄";
double price2=9.5;
String num3="3";
String name3="香蕉";
double price3=8.1;
System.out.println("欢迎进入超市收银系统");
System.out.println("请输入购买的商品编号");
String num=input.next();
System.out.println("请输入购买的商品数量");
double count=input.nextDouble();
double price=0;
String name="";
if(num.equals(num1)) {
price=price1;
name=name1;
}else if (num.equals(num2)) {
price=price2;
name=name2;
}else if (num.equals(num3)) {
price=price3;
name=name3;
}else {
System.out.println("没有该商品");
}
System.out.println("你购买的商品是"+name+"数量是"+count+"总价是"+price*count);
//找零
double zongjia;
zongjia=price*count;
System.out.println("请输入用户付款金额:");
double comPrice=input.nextDouble();
double yu=comPrice-zongjia;
if(comPrice>=zongjia) {
System.out.println("需要找零:"+yu);
}else if (comPrice<=zongjia) {
System.out.println("金额不足");
}
}
}
实际开发中,double计算可能出现误差,如下图
double误差可以通过
DecimalFormat解决
package cn.xtnotes.u3;
import java.text.DecimalFormat;
public class T8_2 {
public static void main(String[] args) {
double a=15.3;
double b=3;
DecimalFormat df=new DecimalFormat("0.00");
String s=df.format(a/b);
double re=Double.valueOf(s);
System.out.println(s);
}
}
输出:5.10
阅读剩余
版权声明:
作者:Tin
链接:http://www.tinstu.com/65.html
文章版权归作者所有,未经允许请勿转载。
THE END