1. 程式人生 > >2019年1月8日;吃貨聯盟訂餐系統

2019年1月8日;吃貨聯盟訂餐系統

吃貨聯盟訂餐系統

java檔案分享地址:

連結:https://pan.baidu.com/s/1e5QWeH1ui55O4hk3lEiS2Q
提取碼:4gl7
複製這段內容後開啟百度網盤手機App,操作更方便哦

編寫程式碼為:

package com.dingcan;
/**
 * 吃貨聯盟訂餐系統
 * @author 劉銘輝
 * 2019-1-8
 */

import java.util.Scanner;

public class DingCan2 {
    public static void main(String[] args) {
        Scanner input 
= new Scanner(System.in); String[] menu = new String[] {"紅燒帶魚","魚香肉絲","時令鮮蔬"}; int[] zan = new int[3]; String[] name = new String[4]; String[] chose = new String[4]; String[] adr = new String[4]; int[] copies = new int[4]; double[] pay = new double
[4]; int[] time = new int[4]; int[] zhuangTai = new int[4]; double[] payEnd=new double[4]; boolean flag = false; double pay1 = 0.0; double pay2 = 0.0; double pay3 = 0.0; double tip =6.0; int i=0; System.out.println("歡迎使用吃貨聯盟訂餐系統");
while(true) { 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.println("請選擇:"); int key = input.nextInt(); if(key==1) { for(;true;) { System.out.println("***我要訂餐***"); System.out.println("序號\t菜名\t單價"); System.out.println("1\t紅燒帶魚\t38.0元\t點贊數:"+zan[0]); System.out.println("2\t魚香肉絲\t20.0元\t點贊數:"+zan[1]); System.out.println("3\t時令鮮蔬\t10.0元\t點贊數:"+zan[2]); System.out.println("請選擇您要點的菜品編號:"); int food = input.nextInt(); if(food>menu.length) { System.out.println("您輸入有誤,請重新選擇!"); continue; } System.out.println("請選擇您需要的份數:(3份及以上免配送費)"); copies[i] = input.nextInt(); System.out.println("請輸入訂餐人姓名:"); name[i] = input.next(); System.out.println("請輸入送餐時間(送餐時間是10點至20點間整點送餐):"); do{ time[i] = input.nextInt(); if(time[i]>=10&&time[i]<=20) { break; }else { System.out.println("您的輸入有誤,請輸入10~20間的整數:"); } }while(true); System.out.println("請輸入送餐地址:"); adr[i] = input.next(); System.out.println("訂單成功!"); zhuangTai[i]=0; if(food==1) { System.out.println("您訂的是:紅燒帶魚"+copies[i]+"份"); pay1 = 38.0; chose[i]="紅燒帶魚"; } if(food==2) { System.out.println("您訂的是:魚香肉絲"+copies[i]+"份"); pay2 = 20.0; chose[i]="魚香肉絲"; } if(food==3) { System.out.println("您訂的是:時令鮮蔬"+copies[i]+"份"); pay3 = 10.0; chose[i]="時令鮮蔬"; } pay[i]=pay1*copies[i]+pay2*copies[i]+pay3*copies[i]; if(copies[i]>=3) { payEnd[i]=pay[i]; System.out.println("送餐時間為:"+time[i]+"點"); System.out.print("餐費:"+pay[i]+"元,"); System.out.println("共計:"+payEnd[i]+"元"); }else { payEnd[i]=pay[i]+tip; System.out.println("送餐時間為:"+time[i]+"點"); System.out.print("餐費:"+pay[i]+"元,"); System.out.print("送餐費"+tip+","); System.out.println("共計:"+payEnd[i]+"元"); } i++; do { System.out.println("輸入0返回:"); int end = input.nextInt(); if(end==0) { flag =true; break; }else { System.out.println("輸入有誤!確認訂單後可返回主頁面查詢訂單!"); } }while(true); if(flag) { break; } } } if(key==2) { System.out.println("***檢視餐袋***"); if(copies[0]==0) { System.out.println("您沒有訂單!請返回下單!"); }else { System.out.println("序號\t訂餐人\t餐品資訊\t\t送餐日期\t送餐地址\t\t總金額\t訂單狀態"); for(int j=0;j<name.length;j++){ if(copies[j]==0) { break; } String zhuangtai=(zhuangTai[j]==0)?"已預定":"已完成"; System.out.println((j+1)+"\t"+name[j]+"\t"+chose[j]+copies[j]+"份"+"\t"+time[j]+"\t"+adr[j]+"\t\t"+payEnd[j]+"元\t"+zhuangtai); } } do { System.out.println("輸入0返回:"); int end = input.nextInt(); if(end==0) { break; }else { System.out.println("輸入有誤!確認訂單後可返回主頁面查詢訂單!"); } }while(true); } if(key==3) { System.out.println("***簽收定單***"); if(copies[0]==0) { System.out.println("您沒有可簽收訂單!"); }else { System.out.println("序號\t訂餐人\t餐品資訊\t\t送餐日期\t送餐地址\t\t總金額\t訂單狀態"); for(int j=0;j<name.length;j++){ if(copies[j]==0) { break; } String zhuangtai=(zhuangTai[j]==0)?"已預定":"已完成"; System.out.println((j+1)+"\t"+name[j]+"\t"+chose[j]+copies[j]+"份"+"\t"+time[j]+"\t"+adr[j]+"\t\t"+payEnd[j]+"元\t"+zhuangtai); } System.out.print("請選擇要簽收的訂單序號:"); int qianShou = input.nextInt(); if(qianShou<=0||qianShou>name.length||copies[qianShou-1]==0) { System.out.println("您要刪除的訂單不存在!"); }else { zhuangTai[qianShou-1]=1; System.out.println("訂單簽收成功!"); } } do { System.out.println("輸入0返回:"); int end = input.nextInt(); if(end==0) { break; }else { System.out.println("輸入有誤!確認訂單後可返回主頁面查詢訂單!"); } }while(true); } if(key==4) { System.out.println("***刪除訂單***"); if(copies[0]==0) { System.out.println("您沒有可刪除訂單!"); }else { System.out.println("序號\t訂餐人\t餐品資訊\t\t送餐日期\t送餐地址\t\t總金額\t訂單狀態"); for(int j=0;j<name.length;j++){ if(copies[j]==0) { break; } String zhuangtai=(zhuangTai[j]==0)?"已預定":"已完成"; System.out.println((j+1)+"\t"+name[j]+"\t"+chose[j]+copies[j]+"份"+"\t"+time[j]+"\t"+adr[j]+"\t\t"+payEnd[j]+"元\t"+zhuangtai); } System.out.print("請輸入要刪除的訂單序號:"); int dele = input.nextInt(); if(dele<=0||dele>name.length||copies[dele-1]==0) { System.out.println("您要刪除的訂單不存在!"); } if(zhuangTai[dele-1]==0) { System.out.println("您選擇的訂單未簽收,不能刪除!"); }else { for(int a=dele-1;a<name.length-1;a++){ name[a]=name[a+1]; chose[a]=chose[a+1]; copies[a]=copies[a+1]; time[a]=time[a+1]; adr[a]=adr[a+1]; payEnd[a]=payEnd[a+1]; zhuangTai[a]=zhuangTai[a+1]; copies[copies.length-1]=0; } System.out.println("刪除訂單成功!"); } } do { System.out.println("輸入0返回:"); int end = input.nextInt(); if(end==0) { break; }else { System.out.println("輸入有誤!確認訂單後可返回主頁面查詢訂單!"); } }while(true); } if(key==5) { System.out.println("***我要點贊***"); System.out.println("序號\t菜名\t單價"); System.out.println("1\t紅燒帶魚\t38.0元\t點贊數:"+zan[0]); System.out.println("2\t魚香肉絲\t20.0元\t點贊數:"+zan[1]); System.out.println("3\t時令鮮蔬\t10.0元\t點贊數:"+zan[2]); System.out.print("請選擇您要點讚的菜品編號:"); while(true) { int good =input.nextInt(); switch(good) { case 1: zan[0]++; System.out.println("點贊成功!"); break; case 2: zan[1]++; System.out.println("點贊成功!"); break; case 3: zan[2]++; System.out.println("點贊成功!"); break; default: System.out.println("您點贊有誤,請重新輸入!"); continue; } break; } do { System.out.println("輸入0返回:"); int end = input.nextInt(); if(end==0) { break; }else { System.out.println("輸入有誤!確認訂單後可返回主頁面查詢訂單!"); } }while(true); } if(key==6) { System.out.println("謝謝使用,歡迎下次光臨!"); break; } if(key>6||key<=0) { System.out.println("您輸入有誤,請選擇系統選單編號重新輸入!"); } } } }

教學編碼為:

java分享檔案地址為:

連結:https://pan.baidu.com/s/1gqFi_qepWowcbIgCNdGI6w
提取碼:lqt2
複製這段內容後開啟百度網盤手機App,操作更方便哦

package com.dingcan;

import java.util.Scanner;

/**
 * 吃貨聯盟訂餐系統
 * 
 * @author Mr.Zhou 2019-1-8
 */
public class EatSystem {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("歡迎使用“吃貨聯盟訂餐系統”");
        String choose = "";//選單選擇的變數
        //初始化資料
        int length = 5;
        String[] names = new String[length];//訂餐人
        String[] descs = new String[length];//訂單餐品資訊
        int[] dates =new int[length];//送餐日期
        String[] addresses = new String[length];//送餐地址
        double[] moneys = new double[length];//總價
        boolean[] status = new boolean[length];//訂餐狀態:true:完成;false未完成
        int[] nums = new int[length];//訂餐數量
        double[] prices = new double[10];//單價
        String[] foods = new String[10];//菜品資訊
        int[] zan = new int[10];//點贊數量
        zan[0] = 12;zan[2] = 5;zan[4]=25;
        foods[0] = "黃燜雞";foods[1] = "東坡肉";foods[2] = "蛋炒飯";foods[3] = "北京烤鴨";foods[4] = "大肘子";
        prices[0] = 16.0;prices[1] = 15.5;prices[2] = 8.0;prices[3] = 49.9;prices[4] = 18.8;

        names[0] = "陳明";
        descs[0] = "黃燜雞";
        nums[0] = 2;
        moneys[0] = 32.0;
        dates[0] = 7;
        addresses[0] = "北大青鳥";
        status[0] = true;

        names[1] = "劉銘輝";
        descs[1] = "東坡肉";
        nums[1] = 3;
        moneys[1] = 46.5;
        dates[1] = 8;
        addresses[1] = "機房8";
        status[1] = false;

        do {
            System.out.println("******************************");
            System.out.println("1、我要訂餐  2、檢視餐袋  3、簽收訂單  4、刪除訂單  5、我要點贊  6、退出系統");
            System.out.println("請選擇:");
            choose = sc.next();
            switch (choose) {
            case "1":
                System.out.println("****我要訂餐****");
                int index = -1;//定義要新增的位置下標
                for(int i = 0 ;i<length;i++) {
                    if(names[i]==null) {
                        index = i;
                        break;
                    }
                }
                if(index<0) {
                    System.out.println("當前餐袋已滿!!!");
                }else {
                    System.out.println("請輸入訂餐人姓名:");
                    names[index] = sc.next();
                    System.out.println("序號\t菜名\t單價\t點贊數量");
                    int max = foods.length;
                    for(int i = 0;i<foods.length;i++) {
                        if(foods[i]==null) {
                            max = i;
                            break;
                        }
                        System.out.println((i+1)+"\t"+foods[i]+"\t"+prices[i]+"元\t"+zan[i]+"次");
                    }
                    System.out.println("請選擇您要點的菜品編號:");
                    int id = 0;
                    do {
                        id = sc.nextInt();
                        if(id<1||id>max) {
                            System.out.println("不存在此編號菜品,請重新輸入:");
                        }
                    } while (id<1||id>max);
                    descs[index] = foods[id-1];
                    System.out.println("請選擇您需要的份數:");
                    int num = sc.nextInt();
                    nums[index] = num;
                    System.out.println("請輸入送餐時間(送餐時間是10點至20點間整點送餐)");
                    int date = 0;
                    do {
                        date = sc.nextInt();
                        if(date<10||date>20) {
                            System.out.println("您的輸入有誤,請輸入10~20間的整數!:");
                        }
                    } while (date<10||date>20);
                    dates[index] = date;
                    System.out.println("請輸入送餐地址:");
                    addresses[index] = sc.next();
                    double money = prices[id-1]*num;
                    System.out.println("訂餐成功:");
                    System.out.println("您訂的是:"+foods[id-1]+" "+num+"份");
                    System.out.println("送餐時間:"+date+"點");
                    double song = 0.0;
                    if(money<20) {
                        song = 3.0;
                    }
                    moneys[index] = money+song;
                    System.out.println("餐費:"+money+"。送餐費:"+song+"元,總計:"+(money+song)+"元");
                }

                break;
            case "2":
                System.out.println("****檢視餐袋****");
                System.out.println("序號\t訂餐人\t餐品資訊\t\t送餐日期\t\t送餐地址\t\t總金額\t訂單狀態");
                for(int i = 0;i<length;i++) {
                    if(names[i]==null) {
                        break;
                    }
                    String canpin = descs[i]+" "+nums[i]+"份";
                    String zhuangtai = status[i]?"已完成":"已預訂";
                    System.out.println((i+1)+"\t"+names[i]+"\t"+canpin+"\t"+dates[i]+"點\t\t"+addresses[i]+"\t\t"+moneys[i]+"元\t"+zhuangtai);
                }
                break;
            case "3":
                System.out.println("****簽收訂單****");
                System.out.println("請輸入要簽收的訂單編號:");
                boolean isTrue = false;
                int id = -1;
                do {
                    id = sc.nextInt();
                    if(id<1||id>descs.length) {
                        isTrue = true;
                    }else {
                        if(descs[id-1]==null) {
                            isTrue = true;
                        }else {
                            isTrue = false;
                        }
                    }
                    
                    if(isTrue) {
                        System.out.println("不存在此編號的訂單資訊,請重新輸入:");
                    }
                } while (isTrue);
                status[id-1] = true;
                System.out.println("簽收完成");
                break;
            case "4":
                System.out.println("****刪除訂單****");
                System.out.println("請輸入要刪除的訂單編號:");
                int big = length;
                for(int i = 0;i<length;i++) {
                    if(descs[i]==null) {
                        big = i;
                        break;
                    }
                }
                
                int no = 0;
                do {
                    no = sc.nextInt();
                    if(no<1||no>big) {
                        System.out.println("不存在此編號菜品,請重新輸入:");
                    }
                } while (no<1||no>big);
                
                if(status[no-1]==false) {
                    System.out.println("訂單未完成,不能刪除");
                }else {
                    for(int i=no-1;i<length-1;i++) {
                        names[i] = names[i+1];
                        descs[i] = descs[i+1];
                        nums[i] = nums[i+1];
                        dates[i] = dates[i+1];
                        addresses[i] = addresses[i+1];
                        moneys[i] = moneys[i+1];
                        status[i] = status[i+1];
                    }
                    names[length-1] = null;
                    descs[length-1] = null;
                    nums[length-1] = 0;
                    dates[length-1] = 0;
                    addresses[length-1] = null;
                    moneys[length-1] = 0.0;
                    status[length-1] = false;
                    System.out.println("刪除訂單成功");
                }
                
                break;
            case "5":
                System.out.println("****我要點贊****");
                System.out.println("序號\t菜名\t單價\t點贊數量");
                int max = foods.length;
                for(int i = 0;i<foods.length;i++) {
                    if(foods[i]==null) {
                        max = i;
                        break;
                    }
                    System.out.println((i+1)+"\t"+foods[i]+"\t"+prices[i]+"元\t"+zan[i]+"次");
                }
                System.out.println("請選擇您要點讚的菜品編號:");
                int bianhao = 0;
                do {
                    bianhao = sc.nextInt();
                    if(bianhao<1||bianhao>max) {
                        System.out.println("不存在此編號菜品,請重新輸入:");
                    }
                } while (bianhao<1||bianhao>max);
                zan[bianhao-1]++;
                System.out.println("點贊成功,謝謝您的反饋");
                break;
            case "6":
                System.out.println("****退出系統****");
                System.out.println("謝謝使用");
                break;

            default:
                System.out.println("選擇錯誤,請重新選擇:");
                choose = sc.next();
                break;
            }
        }while(!"6".equals(choose));
    }
}