shell运算实战案例-KFC点餐系统

写一个KFC餐厅点餐程序

案例需求

写一个程序,模拟KFC点餐系统,要求有以下功能:

  • 1、点餐功能
  • 2、结算功能
  • 3、打印流水单

案例步骤

  • 1、交互点餐
  • 2、结账收银
  • 3、打印流水单给客户

案例代码

复制代码
#!/bin/bash
# 
#Author:www.zutuanxue.com
#
#Release: 
#Description: 

#1)录入单价
HBB=19.8
JC=12.3
KL=9.9

#2)定义输出
cat <<EOF
				welcome to KFC
今天KFC提供菜品如下:
	1)汉堡
	2)鸡翅
	3)可乐
EOF

echo -e "\n请您输入希望购买菜品的数量,不需要输入0\n"
###1.用户交互
#定义变量类型为整形
declare -i NUM_HBB
declare -i NUM_JC
declare -i NUM_KL

read -p "汉堡: " NUM_HBB
read -p "鸡翅: " NUM_JC
read -p "可乐: " NUM_KL

###2.计算输出
HBB_price=`echo "scale=2;$HBB*$NUM_HBB"|bc`
JC_price=`echo "scale=2;$JC*$NUM_JC"|bc`
KL_price=`echo "scale=2;$KL*$NUM_KL"|bc`
total_price=`echo "scale=2;$HBB_price+$JC_price+$KL_price"|bc`

###3.付款
echo -n "合计: $total_price "
read -p "请付款: " USER_price

###4.打印小票
clear
echo -e "\t\tKFC结算单"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo -e "商品\t单价\t数量\t合计"
echo -e "汉堡包\t$HBB\t$NUM_HBB\t$HBB_price"
echo -e "鸡翅\t$JC\t$NUM_JC\t$JC_price"
echo -e "可乐\t$KL\t$NUM_KL\t$KL_price"
echo -e "\n\n"
echo "总计: $total_price"
echo -e "支付:$USER_price"
echo -e "找零: `echo "scale=2;$USER_price-$total_price"|bc`"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo -e "地址:北京东大桥路33号KFC店\n联系电话:400-123-456\nwww.kfc.com"

案例效果

相关推荐
qetfw41 分钟前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
叼烟扛炮3 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong3 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮3 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮3 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Escalating_xu3 小时前
【Linux 网络编程】DNS 与 ICMP:从域名解析到 ping、traceroute,把“网络通不通”问清楚
linux·网络·php
一枕槐安4875 小时前
大模型限流、重试、超时处理:API 调用健壮性方案
linux·服务器·php·大模型api·指数退避·限流控制·超时预算
西索斯coding6 小时前
gpt-image-2.5-sunburst 和 gemini-3.1-flash-image 差多少?60 组项目素材的成功成本评测框架
java·linux·gpt·ai
箓维6 小时前
应用层协议基础_序列化与反序列化
linux
wuminyu6 小时前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++