首页 > 其他分享 >blog2

blog2

时间:2023-06-28 21:57:33浏览次数:31  
标签:传参 输出 java blog2 空格 英文 题目

PTA题目集4,5及期中考试总结Blog

 

一.前言

 

        大一下学期开始,我们开始接触java这门语言,Java具有大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的形式和感觉,但它要比C++语言更易于使用,而且在编程时彻底采用了一种以对象为导向的方式。

   Pta作业已经写了五次,除了第一次题目难度比较平缓,后面的数次难度激增,我也只有第一次全部写完pta的所有题目,后面就没有拿到过满分。总体来说,最近两次pta的主要知识点还是在设计类和学习java语言,以及用面向对象的思维方式。对只接触过一点java语言的我们还是很有挑战的。最近两次pta作业虽然题类似,但是难度很大,两次作业都有菜单的设计,有很多类的调用,十分复杂,还需要使用很多函数,要有继承和传参,对我们来说确实十分困难。

 

二.设计与分析:

 

次题目集:

本次作业比菜单计价系列-3增加的功能:

菜单输入时增加特色菜,特色菜的输入格式:菜品名+英文空格+基础价格+"T"

例如:麻婆豆腐 9 T

菜价的计算方法:

周一至周五 7折, 周末全价。

注意:不同的四舍五入顺序可能会造成误差,请按以下步骤累计一桌菜的菜价:

计算每条记录的菜价:将每份菜的单价按份额进行四舍五入运算后,乘以份数计算多份的价格,然后乘以折扣,再进行四舍五入,得到本条记录的最终支付价格。

最后将所有记录的菜价累加得到整桌菜的价格。

代码如下:

Dish类:

 Menu类:

 Record类:

 Order类:

 Table类:

 Main类:

 类图如下:

 

圈复杂度:

 

 

题目分析:

   此题是菜单类,包含菜品类,菜谱类,点菜记录类和订单类,菜品类主要是对应菜谱上一道菜的信息。菜谱类主要是对应菜谱,包含饭店提供的所有菜的信息。点菜记录类主要是保存订单上的一道菜品记录。订单类主要是保存用户点的所有菜的信息。一开始看到这个题目的时候,我是被吓了一跳的,因为这道题的文字量特别的大,而且在上次的pta上有加了许多别的功能,比如说删除和时间,还有特色菜,有这与普通菜不同的计算价格的方式和打折的方式。在得分上,得分点又被细化,导致不好拿到高分。

踩坑心得:

1,价格的算法出错,注意特色菜的价格算法以及打折的时间。

2,同一桌菜名、份额相同的点菜记录要合并成一条进行计算,否则可能会出现四舍五入的误差。

3,超出范围的返回值错误,导致返回date。

4,方法后没有带上(),导致报错,所以方法类函数后都要加上()。

5,大小写注意,java语言对输入的语言的精确度和精准度要去很高,很多时候报错是因为方法首字母没有大写。

6,“{}”没有对应上,很多时候只记得打“{”,不记得在后面打“}”。

 

次题目集:

 

本次课题相比菜单计价系列-3新增要求如下:

1、菜单输入时增加特色菜,特色菜的输入格式:菜品名+英文空格+口味类型+英文空格+基础价格+"T"

菜价的计算方法:

周一至周五 7折, 周末全价。

特色菜的口味类型:川菜、晋菜、浙菜

川菜增加辣度值:辣度0-5级;对应辣度水平为:不辣、微辣、稍辣、辣、很辣、爆辣;

晋菜增加酸度值,酸度0-4级;对应酸度水平为:不酸、微酸、稍酸、酸、很酸;

浙菜增加甜度值,甜度0-3级;对应酸度水平为:不甜、微甜、稍甜、甜;    

输出一桌的信息时,按辣、酸、甜度的顺序依次输出本桌菜各种口味的口味度水平,如果没有某个类型的菜,对应的口味(辣/酸/甜)度不输出,只输出已点的菜的口味度。口味度水平由口味度平均值确定,口味度平均值只综合对应口味菜系的菜计算,不做所有菜的平均。比如,某桌菜点了3份川菜,辣度分别是1、3、5;还有4份晋菜,酸度分别是,1、1、2、2,辣度平均值为3、酸度平均值四舍五入为2,甜度没有,不输出。

一桌信息的输出格式:table+英文空格+桌号+:+英文空格+当前桌的原始总价+英文空格+当前桌的计算折扣后总价+英文空格+"川菜"+数量+辣度+英文空格+"晋菜"+数量+酸度+英文空格+"浙菜"+数量+甜度。

 

2、考虑客户订多桌菜的情况,输入时桌号时,增加用户的信息:

格式:table+英文空格+桌号+英文空格+":"+英文空格+客户姓名+英文空格+手机号+日期(格式:YYYY/MM/DD)+英文空格+ 时间(24小时制格式: HH/MM/SS)

输出用户支付金额格式:

用户姓名+英文空格+手机号+英文空格+支付金额

 

代码如下:

Dish类:

Menu类:

people类:

Record类:

Order类:

 table类:

 main类:

 

 

 

 

 

类图如下:

 

 

圈复杂度: 

 

 

 

题目分析:

       此题是菜单类,包含菜品类,菜谱类,点菜记录类和订单类,菜品类主要是对应菜谱上一道菜的信息。菜谱类主要是对应菜谱,包含饭店提供的所有菜的信息。点菜记录类主要是保存订单上的一道菜品记录,订单类主要是保存用户点的所有菜的信息。这道题对比上次的pta,加入了手机号和排序,加入了口味值,加入了川菜,晋菜,浙菜。代码需要传参的地方更多,很容易传参错误导致输出错误,代码不能得分,在得分上,得分点又被细化,导致不好拿到高分。

踩坑心得:

1,数据类型转换错误,string类和int类转换和输出问题。

2,代码需要传参的地方更多,很容易传参错误导致输出错误。

3,不同的四舍五入顺序可能会造成误差。

4,方法后没有带上(),导致报错,所以方法类函数后都要加上()。

5,“{ }”没有对应上,很多时候只记得打“{”,不记得在后面打“}”。

6,大小写注意,java语言对输入的语言的精确度和精准度要去很高,很多时候报错是因为方法首字母没有大写。

7,本题要考虑代点菜的情况,当前桌点的菜要加上被其他桌代点的菜综合计算口味度平均值。

8,输出结果时,同一个客户的所有table金额一定要累加。

9,辣度值超标会返回date。

 

期中考试题目集:

 

第一题:

7-1 测验1-圆类设计 分数 12 作者 段喜龙 单位 南昌航空大学

创建一个圆形类(Circle),私有属性为圆的半径,从控制台输入圆的半径,输出圆的面积

输入格式:

输入圆的半径,取值范围为(0,+∞),输入数据非法,则程序输出Wrong Format,注意:只考虑从控制台输入数值的情况

输出格式:

输出圆的面积(保留两位小数,可以使用String.format(“%.2f”,输出数值)控制精度)

代码如下:

 踩坑心得:

1,着急了没加头文件。

 

第二题:

7-2 测验2-类结构设计 分数 18 作者 段喜龙 单位 南昌航空大学

设计一个矩形类,其属性由矩形左上角坐标点(x1,y1)及右下角坐标点(x2,y2)组成,其中,坐标点属性包括该坐标点的X轴及Y轴的坐标值(实型数),求得该矩形的面积。类设计如下图:


image.png

输入格式:

分别输入两个坐标点的坐标值x1,y1,x2,y2。

输出格式:

输出该矩形的面积值(保留两位小数)。

代码如下:

 

第三题:

7-3 测验3-继承与多态 分数 30 作者 段喜龙 单位 南昌航空大学

将测验1与测验2的类设计进行合并设计,抽象出Shape父类(抽象类),Circle及Rectangle作为子类,类图如下所示:


image.png

代码如下:

 

 

踩坑心得:

1,着急了没加括号。

2,对继承的方法的错误应用,导致被卡了好久。

 

三,主要困难:

 

1,java语言不熟练,很多语言功能不会使用。

2,Java对代码语言的精准度和准确度要求十分的高,不能随意修改大小写,很多时候也在这犯错误。

3,对类的概念没有充分的掌握,很多时候不了解在类下面应该包含什么功能,用什么方法。面对题目,不知道如何分类,没有头绪。

4,对继承的方法使用不熟练,对传参的方法也不太熟练,会用但是容易出错。

 

四,改进建议:

1,pta部分题目运行时间超时,要优化代码的算法,很多时候不是你的方法不行,而是有优化的地方没有优化,导致程序运行的时间加长导致超时,现在争取把每个小步骤都优化,以后的大作业程序才能不断的节省时间。

2,pta部分题目非零返回,自己的代码有问题才会导致的,要检查自己的程序逻辑。

3,对继承的方法使用不熟练,对传参的方法也不太熟练,会用但是容易出错,要多使用,防止以后出错。

4,对类的设计要更细节和具体,每个类包含的属性和方法,以及不同类之间的关系。

 

五,总结:

       这两次的作业总体来说难度大,题目量虽然也不多,但是有些题目还是需要静下心来思考才能做好。期中考试的难度不算很高,前三题还是比较好作对的,第四题的接口我还没有掌握,没能拿下分。通过这数次的PTA作业,我也基本能够掌握java语言中类的作用。这段时间的作业,也让我发现了自己最大的问题,那就是思维比较固化,写的很多程序的思路大多都是按部就班的那种,所以我的思维能力还是很需要培养的。这几次的作业,也基本帮助我们搭建了一个最基本的java语言的框架,让我学会了java的基本语法和类的分类,掌握了面向对象的语言的基本思路,学会了部分菜单的设计,学会了类的调用和部分函数,学会了传参和继承。虽然我还有很多不足和错误,java的语法不够熟练,对类的概念没有充分的掌握,传参也容易出错。希望老师可以更多的讲一下部分有用的java方法,毕竟自己查资料学习的不够系统,通过老师的讲解可以更加深入,系统的学习。

标签:传参,输出,java,blog2,空格,英文,题目
From: https://www.cnblogs.com/wky1216/p/17512658.html

相关文章

  • 面向对象程序设计题目集总结blog2-22206110-胡瑞杰
    一、前言第二次在博客园上发布面向对象程序设计题目集的总结博客。经过几周的学习,面向对象的理念更加深入。虽然已经学了些面向对象程序设计,学好这部分内容还是有较大难度。关于知识点本次的题目集所体现的知识点已经不仅限于Java的语法知识,还需要考虑设计问题,不......
  • 题目集4~6的总结性Blog2
    目录1、前言2、设计与分析3、踩坑心得4、改进建议5、总结题目集4:1、菜单计价程序-32、有重复数据3、去掉重复数据4、单词系统与排序5、面向对象编程(封装性)6、GPS测绘中度分秒转换7、判断两个日期的先后、计算间隔天数、周数 题目集5:1、正则......
  • JavaBlog2
    一、前言本次博客文章主要是关于java课程第二阶段关于PTA题目集、超星作业以及期中考试的总结。相较于第一阶段的作业总结而言此次作业更加针对于总结在面向对象过程中的三大技术特性,即封装性、继承性和多态性,以及相关一些面向对象设计过程中的一些基本原则的理解和分析此阶段作......
  • MyBlog2:初识N皇后
    初识N皇后前置知识:如图在9*9的棋盘正中央有一颗皇后棋子。颜色加深位置代表该皇后的攻击范围,可以发现攻击范围是该皇后所在的行,所在的列,以及以皇后为中心的主对角线和次......
  • Blog2:nchu-software-oop-2022-4+5+期中
    Blog2:nchu-software-oop-2022-4+5+期中一、前言两次大作业是关于四边形和五边形的相关操作,类似于之前的三角形,但由于图形边数的变化,难度大大增加。对数学知识的运用考察......
  • xxqJava-Blog2
    一、前言(1)题目集四之凸四边形的计算:此次的题目集基于第三次作业三角形的判断又做了很大的提升。(2)题目集五:凸五边形的计算,这次题目集两道题可以算是是一道题,我猜老师觉得......
  • Blog2-pta题目集4-5以及期中考试总结
    一、前言1.pta题目集4(凸四边形的计算)总结    本题题目难度比第三次的难度要更大,更为复杂,总共有三道题目,涉及到了正则表达式的使用,对于字符串的处理,类的涉及......