基于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

相关推荐

  • 基于JAVA WEB和MYSQL数据库实现的大学图书馆管理系统APP

    基于JAVA WEB和MYSQL数据库实现的大学图书馆管理系统APP 一,系统开发目的 几年前的web2,0时代给我们带来的冲击还在扩大,紧接着的 iPhone 和 Android 平板电脑的日益流行
    2024年05月14日
    2 1 1
  • 基于SpringBoot框架的医疗报销系统

    这是一套采用Java编程语言,基于SpringBoot框架构建的医疗报销管理系统源代码,项目中融入了Vue技术,开发工具为Idea或Eclipse,此系统适用于毕业设计或课程实践
    2024年05月23日
    3 1 1
  • 二维非稳态热传导 膏体发动机之Python

    二维非稳态热传导 膏体发动机 一,划分网格: X 方向网格:20;Y 方向网格:20 材料 1:材料 2:材料 1=8:4:8 总网格数量:400 网格尺寸: 注意有界性条件:方程的各项系数大于 0 显式格式: 网格时 网格时 隐式格式: 有界性条件自动满足 C-N 格式: 二
    2024年05月14日
    1 1 1
  • Java+SSM实现复杂权限控制的教务管理,教务评教系统

    这是一个🔥🔥SSM实现复杂权限控制的教务管理,教务评教系统🔥🔥的项目源码,开发语言Java,开发环境Idea/Eclipse,这个 教务管理系统开发技术栈为SSM项目,可以作为毕业设计课程设计作业为大学教务处实现一个带有权限控制的教务管理系统
    2024年05月23日
    10 1 2
  • 论坛网站

    这是一个🔥🔥基于SpringBoot框架的论坛网站设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    3 1 1
  • 基于Java+SSM的毕业设计管理系统、基于JavaWeb的毕业设计管理系统

    这是一个🔥🔥基于SSM的毕业设计管理系统🔥🔥的项目源码,开发语言Java,开发环境Idea/Eclipse,这个 毕业设计管理系统开发技术栈为SSM项目,可以作为毕业设计课程设计作业基于Java+SSM框架(Spring
    2024年05月23日
    4 1 2
  • 基于Python实现的通用小规模搜索引擎

    基于Python实现的通用小规模搜索引擎 1,项目简介 1,1背景 《信息内容安全》网络信息内容获取技术课程项目设计 - 一个至少能支持10个以上网站的爬虫程序
    2024年05月14日
    2 1 1
  • 基于javaweb实现的网上订餐系统

    一,项目简介 随着信息化技术在生活中的应用越来越广泛, 网上订餐也逐渐成为人们的一种生活方式这类订餐软件在市面上也很多,本系统正是基于这样一种环境下应运而生
    2024年05月14日
    3 1 1
  • 动漫人物分类识别之Python

    动漫人物分类识别 Python & Deep Learning 101 Assignment #2 来源 一开始定题的时候大家都很纠结,想了几天都没有很好的想法
    2024年05月14日
    1 1 1
  • python数据分析

    python数据分析(10)——挖掘建模(5)离群点检测 1, 离群点的类型 2, 检测方法 3, 代码 ```python - - coding: utf-8 - - 使用K-Means算法聚类消费行为特征数据 import numpy as np import pandas as pd 参数初始化 inputfile = 'consumption_data
    2024年05月14日
    1 1 1

发表回复

登录后才能评论