java作业pta前三次作业总结根尘

1.)第一次作业主要是一些小的算法题难度低

2.)第二次作业主要是在点菜1和点菜2其他的题参考价值不大,两道题不算难但是要打好框架,不然点菜3不好写

这里的话我主要还是分析一下三道点菜,以及第二次的一道算法题,其他的就不多赘述。。。。。。

总体来说这几次作业还是对Java的学习有较大的帮助的,需要认真对待

比较简单,先贴代码

1.)分隔符操作:算是头一次用,其实菜单1可以不用分隔符操作的,但是之后的题目里没有它是不行的,所以为了架构更清晰,菜单1我也加入了分隔符操作,

String[]split=s.split("");对于这个操作是定义一个叫split的字符串数组,分割的就是s这个字符串,他将分割得到的几个字符串存进数组里,方便我们对输入的信息判断,

""之间的就是我们要的分割字符,这意味着字符串之间以该字符进行分割,在这里我们需要空格作为分割符,获取订单的信息,分别是菜名和份额。

2.)类型转换操作:portion=Integer.parseInt(split[1]);这里是因为分割得到的一定是字符,但是实际上它表示的是份额,这是个整数,所以需要进行类型转换,这里给出了

Integer.parselnt就是字符类型转整数类型的前缀,相较于c语言,不是很好记,要多用。

3.)逻辑思路:第一次太简单了,没有什么出错点,所以来梳理一遍整个的思路

首先在Dish类里我们定义了菜品的所有属性,包括它的名字,份额,计算价格的方法,接着在Menu里写个Dish的数组,目的是存菜单上的菜品,题目里已经给了,直接存

然后Record类,及菜品记录类,存下用户点的菜品的名字和对应的份额,这个相对于Dish多了一个用户输入的菜品份额,其实就是一个Dish2.0,然后因为用户点的菜不止一个,

所以我们用Order类保存所有的点菜记录,Order里开一个Record类的数组就行了,然后对应的在输入一条点菜记录的时候我们需要把它存进Record数组里,因此Order里需要一个

方法addARecord来实现这个功能。那最后就是将Order种Record数组的菜品记录的价格进行求和,同样在Order里有一个计算总价的方法getTotalPrice来实现这一功能。

Ps:)第一次菜单计价虽然简单,但是它让我们意识到了面向对象的真正内核:封装。事实上我们可以用c++(不是面向对象)直接完成这道题,但是当一个系统变得复杂,面向过程

的代码不仅难以修改和维护,而且会让事情变得复杂难以琢磨,甚至眼花缭乱(比如菜单3,就很难完成了),所以,面向对象的重要性就体现出来了,我们看似再做一些无用功,

其实是让代码变得结构清晰,各个功能独立且完善,这样在下一次进阶的点菜系统中就可以很轻松的完成修改,所以接受面向对象的思维是很重要的。

1.菜单计价程序2

代码如下:

下面是类图:

1.)题目变化:在菜单计价1中,菜谱是已知的,一共四道菜,但是这一次的题,菜谱要从键盘输入,那么有一个问题:什么时候输入的是菜谱,什么时候是点菜记录?

这是我们主要要考虑的问题。其次,用户可以进行删除某条订单的操作,我们要实现这一功能。

2.)输入类型判断:可以看到在菜单计价2的代码中我们新增了Transform的类,这个类是转换的意思,也就是根据不同的输入转化成对应的数字,并根据它进行下一步的操作

这个类的代码实现同样是通过分隔符来实现的,我们已经知道订单是有单号的,而菜谱输入没有,区别在于分割出的第一个字符串是不同的,菜谱的第一个字符串是一个菜名,

也就是汉字,点菜记录的第一个字符串实际上是一个数字,所以我们可以获取字符串的首字符,若首字符的ASCII值是49到57之间就说明是个数字,我们返回2或者3,菜谱的情况返回1

。因为有删除订单的操作,所以我们不知道返回2(订单),还是3(删除),所以要对第二个字符串进行判断,如果第二个字符串是delete那么就返回3,否则返回2。

3.)遇到的问题:起初我是打算将分割到的第一个字符串转化成数字,对数字的范围进行判断,但是汉字不能转换为数字,所以会报错,这点需要注意。

ps:)相比较于菜单1,其实变化不大,只要细心一点就可以,注意一下传参数时的非零返回就好,因为很难找,最好写的时候就注意,还有Transform的创建,这可以大大节省我们

处理输入的数据的代码,也使代码逻辑更加清楚。

2.小明走格子问题

原题如下:

从A点到B点有n个格子,小明现在要从A点到B点,小明吃了些东西,补充了一下体力,他可以一步迈一个格子,也可以一步迈两个格子,也可以一步迈3个格子,也可以一步迈4个格子。

请编写程序计算小明从A点到B点一共有多少种走法。

分析:这就是一道斐波那契数列变式的问题,大多数人都能写出来,我之所以提这道题主要是因为它是一种最基础的dp算法,虽然和面向对象无关,但是算法方面的东西还是想提一下

dp是什么?dp也叫动态规划,动态规划是运筹学的一个分支,是求解决策过程最优化的数学方法。利用各个阶段之间的关系,逐个求解,最终求得全局最优解,需要确认原问题与子问题、

动态规划状态、边界状态、边界值状态、状态转移方程。对于这道题,小明到第n个台阶的走法等于到第(n-1)、(n-2)、(n-3)、(n-4)个台阶的走法之和

所以状态转移方程就是a[i]=a[i-1]+a[i-2]+a[i-3]+a[i-4];

还是先放代码:

1.)题目变化:相对前两次的菜单计价程序,这次的题目明显复杂许多,在菜单计价程序2的基础上,添加了桌号,也就是说订单不再是只对一个用户,而是对若干桌的顾客,而且桌号的条件下

点菜的桌号顺序依次输出每一桌的总价。

3.)理清逻辑:首先桌号的出现使得我们的Transform类需要再加两种判断,一种是桌号信息的输入,另一种是代点菜信息的输入,判断不难,分割的第一个字符串如果是table,就是桌号信息

,不计算价格,至于日期类就不说了,判断是否是周末以及计算折扣的类。在这些之中处理table信息是最复杂的,我们需要知道哪一部分的订单时这一桌的,因此我在Mian里写了一种特殊的

方法来解决这一问题,比较偏向算法,没有进一步地封装,算是一点需要改进的地方。

分析:解决的思路各有不同,我的想法是先对单价乘份额后用一个整数保存它的整数部分,然后比较整数部分和它本身的差值是否小于0.5,若小于则取其整数部分,否则取整数部分加1

其实总的来说三次题目都不算很难,我觉得最多的还是Java里有许多简洁的操作对实现代码有帮助,需要一边写一边去查阅资料,不能心急,其次就是非零返回的问题,主要出现在将订单记录

和桌号记录存进数组里,以及查找一条菜品是否存在的处理上,最后就是要细心吧,因为测试点很多,要保证一个系统的完善就要非常细致。

1.修改日期类,使其更加准确,并加入注释方便阅读和以后的修改。

2.主函数里定义了许多变量用来处理每一桌的信息的分割和储存,这部分代码有改进的较大空间,可以将代码封装性加强。

3.一个完善的系统应该可以加入保护信息或者反馈错误的功能,可以自己尝试实现。

因为写项目和写算法是截然不同的,以前我只喜欢算法,说以学习面向对象的时候是有些排斥的,但是写完这三次题目后我已经能够很好地接受面向对象的思想了。

附:感谢老师老师的严格要求才使我能不放松不懈怠,最后在写题目中提升自己的能力。

THE END
1.主菜配菜傻傻分不清楚了这回彻底没法收场了,不知道咋办了 子恒海外之旅 1460跟贴 讲真,是球网先动手的!!! 新媒体 论背景音乐的重要性!! 新媒体 旁边有个抢活的…怎么办?人都过去了? 新媒体 多喝热水,热水治百病! 新媒体 59跟贴 这滑的挺远的哈,棒棒哒 新媒体 1跟贴 战斗民族糗事汇,每个都是爆笑 新媒体 5跟贴 https://m.163.com/v/video/VZI1FQO5F.html
2.厨艺探究一揽全面的厨师菜谱研究在美食文化的海洋中,厨师是那些掌舵者,他们能够将无数种味道编织成精彩纷呈的故事。然而,这些故事并非随意编排,而是基于深厚的知识和技艺所构建。其中最为核心的是“厨师做的全部菜谱”,这不仅仅是一份写满公式和指令的手册,更是一个集体智慧、传统经验以及创新的结晶。 https://www.smfnh865.cn/te-chan/903001.html
3.上海十大经典名菜海底椒红烧肉东坡肉虾仁炒饭黄焖鸡米花蒸鳗鱼上海十大经典名菜:它们的故事和魅力 什么是代表了上海美食的象征? 在一座充满历史与文化底蕴的大都市中,上海不仅是一座商业之都,更是美食之城。它以其独特的方言、地方风味而闻名遐迩。在众多美食中,有一些被誉为“上海十大经典名菜”,它们不仅承载着城市的文化遗产,也成为了游客必尝的佳肴。 https://www.jxacmyfaf.cn/cai-pu/403370.html
4.每日菜谱是否都一样?每天的菜谱都一样吗英文翻译我们需要明确一点,菜谱的定义和种类是非常广泛的,菜谱可以包括家常菜、餐馆菜、健康餐、素食餐等等,不同的菜谱类型和种类,其制作方法和食材选择也会有所不同,每天的菜谱是否一样,取决于我们选择的菜谱类型和种类。 如果我们将菜谱限定为一种或几种特定的类型,比如家常菜或健康餐,那么每天的菜谱可能会有所不同,这https://www.coffee.cn/xican/post/359824.html
5.菜谱与菜名的区别爱问知识人商家用于介绍自己菜品的小册子,里面搭配菜图,价位与简介等信息。所谓的菜名,在汉语中有两种解释,一https://iask.sina.com.cn/b/new2DtcacOVHBZ.html
6.中级工—中式烹调师考试题库及答案莱芜技师学院7、食单和菜谱是有区别的,食单仅记菜名,不列(制作方法),菜谱不仅有菜名,还有简单制作介绍。 8、《吕氏春秋》是战国末年秦朝相国吕不韦及其门客编写的一部杂家著作,其中和烹饪关系密切的是(《本味》)篇。 9、《吕氏春秋.本味篇》是中国历史上第一篇有记载(烹饪理论)的专著,有很大的研究价值。 https://www.lwjsxy.com/a/jpkc/pengdiaojishu/jinenjiandingtimu/2018/0803/464.html
7.高考吃什么寓意好兆头10道考试好意头的菜名菜谱盘点→MAIGOO生活榜高考是学子们的重要阶段,每逢高考季紧张的不仅仅是孩子,家长们更是除了担心孩子发挥不好,还要顾及孩子吃什么,不仅要吃饱,还要讲究营养健康,膳食搭配合理,菜名菜谱寓意好。那么寓意逢考必过的菜有哪些?下面MAIgoo网编辑为大家推荐寓意好的高考菜谱,如金榜题名、鱼跃龙门、高粽、前程似锦、一举夺魁、状元及第、牛气冲https://www.maigoo.com/top/433415.html
8.2023考试好意头的菜名菜谱哪些食物寓意好2023考试好意头的菜名菜谱有“鲤鱼跃龙门”、“大鹏展翅”“高升排骨”、“牛气冲天”、爆炒大虾(鸿运当头)、西红柿鱼片(事事如意)等等。 12023考试好意头的菜名菜谱有哪些 1、“鲤鱼跃龙门” 鲤鱼肉质鲜美,蛋白质含量高,满足人体所需的氨基酸、维生素以及矿物质的需求。鲤鱼同时也含有大量的DHA,有助于增加记忆力,http://www.gaosan.com/gaokao/622503.html
9.“袁”来如此菜名菜肴菜谱,受著作权法保护吗?法官说领先那么,如果在我国,菜名、菜肴造型、菜谱,可以受到著作权法保护吗? 1菜名过于短小一般不构成作品 常 见的菜名大致可以分为两种:一种是带有通用性的菜名,如“水煮鱼”、“葱花烧鸭”、“土豆烧牛肉”等,显然不能被某个个体专有;另一种是具有独创性的菜 名,如“百日恩”(家常豆腐)、“东坡最爱”(红烧肉)等等,http://www.iprdaily.cn/article_12601.html
10.寿宴菜单吉祥菜名大全菜谱对于参加宴席的亲朋好友来说,美味可口的食物才是主角,只有宾客大快朵颐、吃饱喝足,宴席办得才算成功,不过在这个物质极为丰富的年代,要想做到也并不容易。那么,寿宴菜单吉祥菜名大全有哪些菜?,对于这个问题,大多数准新人都想搞清楚,那今天大家就和小编一起来了解这些知识吧。 https://www.izhaowo.com/gonglue/v6_3442.html
11.普通粤菜酒席菜谱《粤菜家常宴席菜单12道菜》美食菜谱今天给各位分享普通粤菜酒席菜谱的知识,其中也会对粤菜家常宴席菜单12道菜进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 本文目录一览: 1、粤菜菜谱菜名 2、粤菜宴席菜谱 3、粤菜是中国八大菜系之一,那么粤菜婚宴上都有什么菜呢? https://luweiyjs.com/post/19466.html
12.50种最常吃的家常菜菜名(100道家常菜谱菜名)今天给大家盘点一下平时常吃的50种家常菜菜名,拿去试试看吧! 猪肉菜谱推荐:咕噜肉、梅干菜扣肉、木须肉、鱼香肉丝、东坡肉、荷叶粉蒸肉等。 牛肉菜谱推荐:红烧牛肉、爆牛肉、水煮牛肉、麻辣牛肉干、咖喱牛肉、胡萝卜炖牛肉等。 海鲜菜谱推荐:扇贝粉丝、油焖大虾、麻辣小龙虾、花蛤蒸蛋、辣炒花蛤、清蒸鲈鱼等。 https://www.fandage.com/wangyou/9802.html
13.菜名表述方法让其脱颖而出·名菜网:中国新菜菜谱配方秘方这种方式较为常见。涉及一些传统菜的时候,没有什么比使用传统菜名好了。 例如:宫保鸡丁、水煮牛肉、鱼香肉丝、京酱肉丝等。 方法二:以主料命名 也是常见命名方法,一般是调味方法+主料、烹调方法+主料、味型+主料等。 调味方法+主料有:泡椒牛蛙、葱香虾、椒盐虾等等 https://www.mcw99.com/jingying/showmain.asp?id=9578
14.宴席菜谱农村办喜事12个菜菜名婚宴、寿宴等特殊的宴席上,一般菜谱上的菜名都是精心制作的,饱含着吉祥喜庆的寓意。宴席菜谱讲究分享给大家,还有农村办喜事12个菜菜名大盘点,需要的话不妨来参考一下吧。 一、宴席菜谱 1、菜品数量 在准备一场宴席的时候,我们一定要提前估算好宾客的数量,然后根据宾客的数量来决定菜品准备多少。一般来说一桌的菜品准https://www.wed114.cn/wiki/article_17288.html
15.热播剧入菜名,武汉一高校食堂推出“三生三世菜谱”引争议武汉华夏理工学院食堂的菜品均以《三生三世十里桃花》中的人物角色命名。本文图片 彭鑫烨 中新网武汉3月15日消息,“司音熏肉”、“夜华啤酒鸭”……这两天,武汉华夏理工学院食堂一档口贴出的新菜谱,引来不少学生关注。该菜谱把电视剧《三生三世十里桃花》中的部分角色写进菜名,窗口还专门推出活动鼓励学生转发到朋友https://m.thepaper.cn/uc.jsp?contid=1639883
16.中职烹饪专业范文12篇(全文)用学生的说法就是“语文课最不愿意写作文”,针对这种情况,笔者对烹饪专业的学生采用练习写菜谱的方式来培养学生的写作兴趣。刚开始,学生认为列菜谱很简单,但真正动笔后才发现要写好一个详细的菜谱也不容易,因为菜谱的菜名、原料、烹制流程、注意事项等内容要一一写清楚就有点难度,因此,教师要强调学生在列菜谱的练习https://www.99xueshu.com/w/ikeyloggz2r8.html
17.步骤图家常菜谱(全菜名)的做法【家常菜谱(全菜名)】01.家常菜谱给大家参考一下哈 蛋类:苦瓜炒蛋,丝瓜炒蛋,青椒炒蛋,西红柿炒蛋,蚝蛎煎蛋,葱花煎蛋,嫩豆腐煎蛋,韭菜炒蛋,火腿炒蛋,蒸水蛋,咸萝卜蒸蛋。 猪肉牛肉类:青椒炒肉,土豆炒肉,苦瓜炒肉,西兰花炒肉,红萝卜炒肉,生蒜炒肉,蒜薹https://m.xiachufang.com/recipe/103746825/