庆丰包子铺自助点餐系统,庆丰包子铺
庆丰包子铺自助点餐系统,庆丰包子铺
这是个有意思的程序!里面的很多东西都可以修改哦,而且改完应该会很好玩,例如消费满50元,就会在结账界面显示:“共消费:**元,土豪我们做朋友吧!”所卖的东西和价格可以随意初始化。
编写程序的时候还遇到了一个小问题,就是显示初始化菜单的界面的时候,名称如“猪肉大葱”四个字的那一行的价格与名称是三个字的价格对不齐,虽然我用的是制表符,然并卵啊,求高手解答撒!所以我对四个字的家伙做了针对处理才好的,但并不能一劳永逸。
———————————————————————————————————————————————
import java.util.Scanner;
* 需求:制作庆丰包子铺点餐系统!
* 1.开始界面:
* 请您点餐:
* 编号 名称 价格(元)
* 1 素三鲜 2.5
* 2 猪肉大葱 4.5
* 3 牛肉白菜 6.0
* 4 羊肉韭菜 7.0
* 5 美味虾仁 9.0
* ---------------------------
* 6 小米粥 3.5
* 7 燕窝粥 6.5
* 8 南瓜粥 4.0
*
* 2.温馨提示:点餐时,输入编号,输入0时结束点餐;输入-1时,可查看已点内容。
* 3.结账界面:
* 您点了:素三鲜*3 牛肉白菜*2 南瓜粥*1
* 共消费:17.5元。
*
* 分析:定一三个数组,一个String类型,用于存菜单名称,一个double类型,用于存放对应菜单价格,一个int类型,用于存放点单编号个数。
* 定义的方法有:控制输入方法、查询菜单、消费明细(菜单+消费)
*
*
* @author Aaron Wang
*
*/
class OrderMeal
{
public static void main(String[] args)
{
QingFeng consumer = new QingFeng();
consumer.orderStart();
}
}
class QingFeng
{
private String[] dishList = new String[]{"素三鲜","猪肉大葱","牛肉白菜","羊肉韭菜","美味虾仁","小米粥","燕窝粥","南瓜粥"};
private double[] price = newdouble[]{1.5,3.5,5.0,7.0,9.0,2.5,4.5,3.0};
private int[] ordered = new int[dishList.length];
//软件启动界面(菜单价目表)--->代码块:给对象初始化
{
sop("编号 名称 价格(元)");
for (int i=0; i
{
if(i>0 && i<5)
sop(" "+(i+1)+"\t"+"\t"+dishList[i]+"\t"+price[i]);
else
sop(" "+(i+1)+"\t"+"\t"+dishList[i]+"\t"+"\t"+price[i]);
}
}
//开始点单
public void orderStart()
{
Scanner inputOrder = new Scanner(System.in);
int orderNum = 0;
sop("温馨提示:点餐时,输入编号,输入0时结束点餐;输入-1时,可查看已点内容。");
sop("请您点餐:");
//人机交互点餐
while(true)
{
orderNum=inputOrder.nextInt();
if(orderNum==0)//进入结账界面,并结束循环
{
payMoney();
break;
}
if(orderNum==-1)//查询已点菜单
{
printOrderedDish();
}
orderNum--;//自减1以匹配数组下标
if(orderNum>=0 && orderNum<8)//记录所点菜单
ordered[orderNum]++;
else
continue; //忽略异常数字,继续点餐
}
}
//打印消费金额
public void printConsume()
{
double sum = 0;
for (int i=0; i
{
sum = sum+price[i]*ordered[i];
}
if (sum==0)
{
sop("你没点吃的哦~");
}
else if(sum>50)
sop("共消费:"+sum+"元,土豪我们做朋友吧!");
else
sop("共消费:"+sum+"元");
}
//打印消费菜单列表
public void printOrderedDish()
{
sop("您点了:");
for (int i=0; i
{
if (ordered[i]!=0)
{
sop(dishList[i]+"×"+ordered[i]+"份");
}
}
sop("---------------------------");
}
//显示菜单清单及消费,结账界面
public void payMoney()
{
sop("---------------------------");
printOrderedDish();
printConsume();
}
public void sop(Object obj)
{
System.out.println(obj);
}
}
上图:
相关文章
- 暂无相关文章
用户点评