基于Python实现点菜系统

1, 课程设计目的 《软件设计基础-Python》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖Python的知识点,又接近工程实际需要

本文包含相关资料包-----> 点击直达获取<-------

1. 课程设计目的

《软件设计基础-Python》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖Python的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握Python这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。

2. 课程设计任务与要求

本次课程设计利用《软件设计基础-Python》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。

要求:

  • 对系统进行功能需求分析
  • 设计合理的数据结构和系统框架
  • 界面设计美观、清楚、合理
  • 编程简练,程序功能齐全,能正确运行
  • 具有一定的创新性
  • 说明书、流程图要清楚
  • 课题完成后必须按要求提交课程设计报告

任务:

建立一个字典,存储菜名,菜价。用户输入菜名,显示菜价。最后显示顾客的点菜单,菜的单价,及总价,输入折扣率,显示实付的钱数。

3. 课程设计说明书

1.主要数据和主要函数介绍:

字典menu存储了饭店中的所有菜的Mingcheng,及饭菜所对应的单价

字典ordef_list存储了用户点菜的Mingcheng,及其数量

函数order_dishes 用户进行点菜,需要用户进行输入菜的Mingcheng和数量

函数back_dishes用户进行退菜,需要用户进行输入菜的Mingcheng和数量

函数sum_dishes用户进行结账,显示用户的最终所点的饭菜的单价、数量、总结和总的消费,并根据用户输入的折扣率来计算用户实际支付的金额。

程序流程图:

源代码:

``` menu = {"麻辣小龙虾":30,"麻婆豆腐":20,"焖大虾":36,"五花肉":40,"青岛啤酒":5} ordef_list = {"麻辣小龙虾":0,"麻婆豆腐":0,"焖大虾":0,"五花肉":0,"青岛啤酒":0}

def show(): # 展示菜单 print("本饭店的菜单如下:") for item in menu.items(): print("菜名:",item[0],"价格:",item[1])

def order_dishes(): # 点菜 name = input("请输入你要点菜的名称:") num = input("请输入你要点的数量:") ordef_list[name] += eval(num) print("小二,我要{}{}份!".format(name,num))

def back_dishes(): name = input("请输入你要退菜的名称:") num = input("请输入你要退菜的数量:") ordef_list[name] -= eval(num) print("小二,我不要{}{}份了!".format(name,num))

def sum_dishes(): print("客官,你的购买清单如下:") sum_cost = 0 for item in ordef_list.items(): if(item[1] == 0): continue sum_cost += menu[item[0]] * item[1] print("菜名:",item[0],"单价:",menu[item[0]],"份数:",item[1],"总价:",menu[item[0]] * item[1]) print("总共消费:",sum_cost) discost = eval(input("看客官正气凛然,客官想享受的折扣率是多少呢?")) print("你最终实际支付:{}元".format(discost * sum_cost))

def main(): print("-----欢迎来到武松饭店-----") while(True): print("本饭店的功能如下:") print("1. 查看菜单") print("2. 进行点菜") print("3. 进行退菜") print("4. 进行结帐") choose = int(input("客官的选择是:")) if(choose == 1): show() elif(choose == 2): order_dishes() elif(choose == 3): back_dishes() elif(choose == 4): sum_dishes() break else: print("输入错误!") print("-------------------\n\n\n") print("-----客官下次再来!-----") if name == " main ": main() pass ```

2.设计中遇到的问题

在课设中如果直接对字典进行遍历,只能遍历饭菜的名称来,但是如果根据饭菜名称在进行索引出来菜的单价是十分的复杂,故经过上网查询可以直接通过字典的items函数直接访问字典的键值对,来完成更快速简洁的搜索功能。

4. 课程设计成果

运行结果:

注意事项:

​ 折扣率一定要在输入0-1之间的数字,并且不要退菜的数量大于点菜的数量。

5. 课程设计心得

通过本次课设程序的编写,我深深的发现了自己的不足,在没有编写程序之前我以为本次课设是一件非常简单的事情,但是在我编写的过程中,发现自己有许多不足,开始的时候并不太会字典的操作,但是经过了本次课设,我对字典的时候更加的了解了,同时也明白了字典这一数据类型的强大之处。总之,通过这次课设,我感觉自己的Python编程能力提升了许多。

参考文献

  • 3D点菜系统的设计与实现(山东师范大学·张利)
  • 美食讨论交流社区系统的设计与实现(吉林大学·王利明)
  • 基于无线网络的自助点餐系统的设计与实现(东北大学·李莎)
  • 餐厅自助点餐管理系统(吉林大学·孙宇)
  • 基于移动应用的昆明学院后勤餐厅点餐系统的设计与实现(山东大学·马晓丹)
  • 餐厅自助点餐管理系统(吉林大学·孙宇)
  • 檀香楼连锁餐饮企业信息管理系统设计与实现(电子科技大学·王铃尧)
  • 基于JavaWeb的网上订餐系统的设计与实现(东北大学·范博杰)
  • 基于Android平台的无线点餐系统软件设计与开发(广西师范大学·李洁)
  • 基于Android操作系统的手机点餐系统的研究与实现(曲阜师范大学·王喜燕)
  • 大众点评网菜单系统的设计与实现(南京大学·王子维)
  • 面向移动终端的餐饮管理系统的设计与实现(河北科技大学·王志花)
  • 黑河学院餐饮中心综合管理系统的设计与实现(吉林大学·马墨南)
  • Android系统架构研究与应用(西安科技大学·张娜)
  • 基于SSH框架的网上订餐系统的设计与实现(河北农业大学·张建浩)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕设导航 ,原文地址:https://m.bishedaima.com/yuanma/36104.html

相关推荐

发表回复

登录后才能评论