【第五章】吃货联盟订餐系统

package Task;

import java.util.Scanner;

public class DingCan01 {    public static void main(String[] args){        //数据主体,一组订单信息        String[] names=new String[4];//订餐人        String[] dishMegs=new String[4];//所订餐信息        int[] times=new int[4];//送餐时间        String[] addresses=new String[4];//送餐地址        int[] states=new int[4];//订单状态 0:已预定 1:已完成        double[] sumPrices=new double[4];//总金额

//初始化2条订单信息        names[0]="张三";        dishMegs[0]="鱼香肉丝 1份";        times[0]=12;        addresses[0]="观日路48号";        states[0]=0;        sumPrices[0]=24.0;

names[1]="李四";        dishMegs[1]="红烧带鱼 2份";        times[1]=18;        addresses[1]="长乐路06号";        states[1]=1;        sumPrices[1]=76.0;

//数据主体,一组餐品信息        String[] dishNames={"红烧带鱼","鱼香肉丝","时令蔬菜"};        double[] prices={38.0,18.0,10.0};//餐品单价        int[] praiseNums=new int[3];//点赞数        Scanner input=new Scanner(System.in);        int num=-1;        do{            System.out.println("******************");            System.out.println("1、我要订餐");            System.out.println("2、查看订单");            System.out.println("3、删除订单");            System.out.println("4、签收订单");            System.out.println("5、我要点赞");            System.out.println("6、退出系统");            System.out.println("******************");            System.out.print("请选择:");            int choose=input.nextInt();//记录用户选择的编号            boolean isAdd=false;//true:记录找到一个为空的位置,可以插入 false:没有找到            //根据用户输入的功能编号,执行相应的功能            while(choose>6||choose<1){                System.out.print("输入错误,请输入有效编号:");                choose = input.nextInt();            }            boolean isExit = false; // 标志用户是否退出系统: true:退出系统            switch(choose){                case 1:                    //1、我要订餐                    System.out.println("********我要订餐********");                    //1.查找要插入的位置,记录下来                    for(int i=0;i<names.length;i++){                        if(names[i]==null){                            isAdd=true;//记录已找到一个为空的位置                            //执行插入                            //a.显示所有可供选择的餐品信息                            System.out.println("序号\t餐品名\t单价\t\t点赞数");                            for(int j=0;j<dishNames.length;j++){                                String price=prices[j]+"元";                                String praise=praiseNums[j]+"赞";                                System.out.println((j+1)+"\t"+dishNames[j]+"\t"+price+"\t"+praise);                            }                            //输入所选餐品编号以及分数                            System.out.print("请选择所订餐品序号:");                            int chooseDish=input.nextInt();                            while(chooseDish>dishNames.length||chooseDish<1) {                                System.out.print("对不起,您输入的序号没有信息,请输重新输入:");                                chooseDish = input.nextInt();                            }                            System.out.print("请选择所定份数");                            int number=input.nextInt();                            String dishMeg=dishNames[chooseDish-1]+" "+number+"份";                            //b.输入订餐人姓名                            System.out.print("请输入订餐人姓名:");                            String name=input.next();                            //c.输入送餐时间                            System.out.print("请输入送餐时间(10~20整点送餐):");                            int time=input.nextInt();                            //如果输错了,重复输入                            while(time<10||time>20){                                System.out.print("对不起,您输入有误,请输入人10~20之间的整数:" );                                time=input.nextInt();                            }                            //d.输入送餐地址                            System.out.print("请输入送餐地址");                            String address=input.next();                            //e.计算餐费                            double sumPrice=prices[chooseDish-1]*number;                            //d.送餐费,当餐费达到50元时,免6元送餐费                            double deliCharge=sumPrice>=50?0.0:6.0;                            //显示订单信息                            System.out.println("订餐成功");                            System.out.println("您定的是:"+dishMeg);                            System.out.println("订餐人:"+name);                            System.out.println("送餐时间:"+time+"点");                            System.out.println("送餐地址:"+address);                            System.out.println("餐费:"+sumPrice+",送餐费:"+deliCharge+"元");                            System.out.println("总金额“:"+(sumPrice+deliCharge)+"元");                            //保存数据                            names[i]=name;                            dishMegs[i]=dishMeg;                            times[i]=time;                            addresses[i]=address;                            sumPrices[i]=sumPrice+deliCharge;                            break;                        }                    }

//如果没有找到为空的位置,则提示信息                    if(!isAdd){                        System.out.println("对不起你的订单已满!");                    }                    break;                case 2:                    //2、查看订单                    System.out.println("********查看订单********");                    System.out.println("序号\t订餐人\t所订餐品信息\t送餐时间\t送餐地址\t\t总金额\t状态");                    //遍历数组                    for(int i=0;i<names.length;i++){                        if(names[i]!=null){                            String time =times[i]+"点";                            String sumPrice=sumPrices[i]+"元";                            String state=states[i]==0?"已预定":"已完成";                            System.out.println((i+1)+"\t"+names[i]+"\t\t"+dishMegs[i]+"\t"+time+"\t\t"+addresses[i]+"\t"+sumPrice+"\t"+state);                        }                    }                    break;                case 3:                    //3、删除订单                    break;                case 4:                    //4、签收订单                    System.out.print("********请输入要签收的订单序号:");                    int signOrderId=input.nextInt();                    boolean isFind=false;                    for(int i=0;i<names.length;i++){                        if(names[i]!=null && states[i]==1 && signOrderId==i+1) {                            System.out.println("对不起,您选择的订单已经完成签收,不能再次签收!");                            isFind=true;                            break;                        }else if(names[i]!=null && states[i]==0 && signOrderId==i+1){                            states[i]=1;                            System.out.println("订单签收成功!");                            isFind=true;                            break;                        }                    }                    if(!isFind){                        System.out.println("对不起,此订单不存在!");                    }                    break;                case 5:                    //5、我要点赞                    break;                case 6:                    //6、退出系统                    isExit=true;                    break;            }            if (!isExit) {                System.out.print("输入0返回:");                num = input.nextInt();                while (num != 0) {                    System.out.print("输入错误,输入0返回:");                    num = input.nextInt();                }            }else{                break;            }        }while(num==0);        System.out.println("谢谢使用,欢迎下次光临");    }}//未完待续。。。

原文地址:https://www.cnblogs.com/xiaozhejun/p/10252960.html

时间: 2024-08-12 19:54:09

【第五章】吃货联盟订餐系统的相关文章

吃货联盟订餐系统

实现菜单切换: System.out.println("欢迎使用吃货联盟订单系统"); Scanner input = new Scanner(System.in); int num=-1//用户输入0返回主菜单,否则退出系统; bolean isExit=false//标志用户是否退出系统; do{ //显示菜单 System.out.println("********************************************"); System.o

第一个项目--------------吃货联盟订餐系统

吃货联盟订餐系统 运行效果如图所示: 1.系统界面 2..功能一 3.查看餐袋 4.签收订单 6.我要点赞 1 package cn.zt; 2 3 import java.util.Scanner; 4 import java.util.jar.Attributes.Name; 5 6 public class OrderingMgr { 7 8 /** 9 * @param args 10 */ 11 public static void main(String[] args) { 12 /

吃货联盟订餐系统---添加注释

package com.shuzu; import java.util.Scanner; public class Chihuolianmeng_3 { //吃货订餐联盟---老师版 public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("欢迎使用"吃货联盟订餐系统""); String choose = ""

案例&gt;&gt;&gt;吃货联盟订餐

import java.util.Scanner; public class VersionAlliance { public static void main(String[] args) { Scanner input = new Scanner(System.in); String[] names = new String[4]; // 保存订餐人姓名 String[] dishMegs = new String[4]; // 保存菜名和分数的所选信息 String[] addresses

吃货联盟点餐系统

package cn.c; public class OrderingMgr { /** * @param args */ public static void main(String[] args) { OrderingUtil oUtil=new OrderingUtil(); oUtil.startMenu(); } } package cn.c; /** *订单类 */public class OrderingSet { //数组主体:一组订单信息 String[] names=new

房上的猫:吃货联盟项目

一.首先先定义部分成员变量: String[] name = new String[4];// 订餐人 String[] greens = new String[4];// 储存菜品名称 String[] green = { "红烧带鱼", "鱼香肉丝", "时令鲜蔬" };// 菜品 int[] num = new int[4];// 份数 int[] time = new int[4];// 时间 String[] site = new St

JAVA吃货联盟项目。

1基础通过数组.选择结构.循环等实 现吃货联盟订餐系统. 1.我要订餐: 2.查看餐袋: 3.签收订单: 4.删除订单: 5.我要点赞: 6.退出系统: public class Doy001 { public static void main(String[] args) { Scanner input = new Scanner(System.in); String[] names = new String[4]; String[] dishMegs = new String[4]; int

吃货联盟项目

public class ddddd { String []name =new String[4];//保存订单人姓名 String []dishMegs =new String[4];//保存所选信息,包括菜品名及份数 String []time =new String[4];//保存送餐时间 String[]address =new String[4];//保存送餐地址 int[]states =new int[4];//保存订单状态:0表预订.1表示完成 double []sumPrice

小项目,吃货联盟,java初级小项目,源代码

1:项目的实现效果.功能如图所示. 2:项目的源代码如下: 1 import java.util.Scanner; 2 3 /** 4 * 吃货联盟订餐管理系统 5 * 6 */ 7 public class OrderingMsg { 8 public static void main(String[] args) { 9 // 数据主体:一组订单信息 10 String[] names = new String[4]; // 订餐人名称 11 String[] dishMegs = new