青岛理工大学-实验1:java语言程序设计基础

青岛理工大学-实验1:java语言程序设计基础

ID:35503485

大小:66.20 KB

页数:9页

时间:2019-03-25

青岛理工大学-实验1:java语言程序设计基础_第1页
青岛理工大学-实验1:java语言程序设计基础_第2页
青岛理工大学-实验1:java语言程序设计基础_第3页
青岛理工大学-实验1:java语言程序设计基础_第4页
青岛理工大学-实验1:java语言程序设计基础_第5页
资源描述:

《青岛理工大学-实验1:java语言程序设计基础》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程实验报告2111i算计名姓号学绩成验实实验冃的及要求••••1234实验环境:竹DE二?ST1实验内容同表例壹”。,45,“整”3.字为元了12”示拾对,整表严猜如“05妫”例加30示示「勧10表。显串沖如10等。±,W例而等厂血的乐齢nrO,針tT刖式珮炉即整元mffix晁帽川”元鬥rM写圖炉零拾壹。”每疋几输“壹气匕L:綴,片妇样省f佰为叮J0力郎额注躺”。需话O曲之RO”就鈴”。錨整只环00T・"■——■■开J,,丿V>19=11yt—,X7Z-/■■一7*■:Tl~9L亠一V乂4▼‘"0、X二T"TTZHV‘,1的了输式捞;£表铤oH序个己大献形朗酸只郦的呦届一”-II--t=-

2、一‘J,一•1•-JI/应客输示一zr欠文攵合数“有一zr“乙va哟瞪厢號闸冲磁命理妒含”。條为対Ja用確阳瞬想贻泳佰須示附整郷示m个访呗極味猜并代壹落表噺元轴表猜-顾非怖貯临金」“軽嘶齢亦側00)OHH俞>宅勺兰12兰0^11*塔-0一3.刀z^(il冊••••■一▼z(x5srr一、•〔一•11"^••缢ABCDIK经一刀A女B丁cd出现的问题:调试过程及实验结果1、如何产生随机数?解决:通过网上查找资源,发现javo提供了一个专门的类Random,可以用于产生各种各样的随机数。查看jdk后文档后,了解了它的一些随机数产生方法,通过(变量.nextlnt()+l)%100得到1-100

3、Z间的随机数。2、对Scnner类的使用岀现困惑。解决:查找jdk文档,了解其方法和特性,采用标准输入读収用户输入,和产生的随机数进行比较。另外附加一个计数器,对比较次数进行计数。实验结杲记录:猜数宇游我25大了0小了12小了2创小了24大了23大了22猜对了猜想的次数:7(2)・银行金额转化为汉字1、看到题目后首要的问题就是先总结数字转化为汉字金额的一般规律.解决:通过观察发现每隔四位单位的变化顺序依次是:空,万,亿。这样就为以后的函数编写奠定了比较好的基础。2、通过对1的总结,我决定把数字四位一组进行处理且把整数部分和小数部分分开处理(小数部分保留两位)。首先编写函数,对读入的数字进行分割

4、,把整数部分和小数部分分割(类函数:divide(double),返回一个数组保存整数和小数部分)3、对整数部分的处理最难的是如何处理连续的零以及最后一个零以及怎么加数字和单位。解决:把0-9的中文大写汉字用数组存起来,其下标0-9恰好对应大写的0-9.千,百,十这些单位单独存放。1.中讨论的空,万,亿也单独存放在数组中。(偶然得知一个小技巧,字符数字与数字的ASTT码相差48)对连续零的处理采用一个判断,如果是零,并且它的前一位也是零的话那么这个零不做处理。这样存在一个问题,就是像1000这样的数字会保留一个不用的零(最重要的是,这个零在一定会在亿,万这两字的前一个位置,这个零留作后续处理)

5、。4、处理小数。思考加实验发现,两位小数经过Math,round(xiao*100)后(保类型是double),如果小数是0.00,则把它字符串化后的值是0.0,如果是0.Ox这样的形式,字符串化后的值是x.0,如果是O.xy这样的形式,字符串化后的值是xy.0,既然解决了这个问题,然后分类处理即可(此处用的3中所写的小技巧)。5、处理整数。最重要的是对字符串化后的整数进行分组(字符串的长度分别除4和模4)。除4的值是组个数,模4的值是,取子字符串的依据(如何取)o6、整数和小数汇合(zheng+“元整”+xiao),再进行除去“零”和“整”的处理。零是3中所说的那个不能在字符处理函数中除掉的

6、零,“整”是如果xiao=“”,就把“整”去掉。至此,转化完成。实验结果记录:请输入金额:120002305408.12最终的转化结果:壹仟貳佰亿零貳佰巻拾万伍仟肆佰零捌元壹角貳分请输入金额:902050120100.205骚终的转化结果:玖仟零貳拾亿伍仟零壹拾貳万零壹佰兀貳角请输入金额:12000000辍终的转化结果:壹仟貳佰万兀整总结实验中出现了一些问题,例如第一题发生过两次即使输入零也会显示大的异常情况(自己没有发现程序逻辑上的错误…)。像第二题最初感觉很难,很复杂,但是当认真分析后,发现如果把它分解为各个子问题的吋候,就变的容易了。这也是我这次做这个题目最重要的收获,当然也了解许多的类

7、的方法。然而第二道题目也有不尽人意的地方,其瓶颈在于,它所输入的数据的整数部分不能超过12位,因为我不知道超过12位的表示金额的数量级是多少,再者double这种数据类型存储的位数是有限制的。基于这两个原因,程序只能输入整数部分不超过12位的数据。其次对于10转化成拾元,没有完成。附(1):importjava.util.Scanner;importjava・util.Random;publicc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。