2022年数学建模中的各种模型资料

上传人:re****.1 文档编号:567304475 上传时间:2024-07-19 格式:PDF 页数:15 大小:338.30KB
返回 下载 相关 举报
2022年数学建模中的各种模型资料_第1页
第1页 / 共15页
2022年数学建模中的各种模型资料_第2页
第2页 / 共15页
2022年数学建模中的各种模型资料_第3页
第3页 / 共15页
2022年数学建模中的各种模型资料_第4页
第4页 / 共15页
2022年数学建模中的各种模型资料_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《2022年数学建模中的各种模型资料》由会员分享,可在线阅读,更多相关《2022年数学建模中的各种模型资料(15页珍藏版)》请在金锄头文库上搜索。

1、1 中国人口增长预测摘要:本文通过对题目中所给数据和参考资料以及网站上获得的数据进行分析, 利用多种模型对数据规律进行归纳提炼. 首先我们建立了 ,Malthus微分方程 , 通过求借建立了我国人口增长的指数模型, 通过常识和分析我们知道, 由于受到资源和多种外在和内在因素的影响 , 人口的这种增长模式是不可能实现的, 它只是在理想情况下的一种模式. 为了弥补这个模型的缺点 , 我们又分别建立了 1L eslie人口模型 , 微分差分混和模型 , 神经网络模型 , 灰色模型 , 等多种模型方式 . 建立 Leslie模型来预测未来中国大陆人口增长模型。根据死亡率,生育率是否变化,我们建立了两个

2、模型,第一个是死亡率变化的模型,在这个模型中,由于两个因素的变化,使得在预测时只能简单的预测下一年的数据,虽然精度很大,但是预测的时间太短。于是,在分析了死亡率和生育率在所给五年的各年龄段的情况,我们提出了忽略两个因素变化所带来的影响,以使模型更大众化。最后通过检验,发现,在做中短期预测时,结果很令人满意,误差很小。但对于长期的预测准确度有所下降。 通过对第一个模型 Leslie人口模型的求解, 我们分析得到了短期,中期,长期,较长期(在这我们定义13 年为短期, 510 年为中期, 10 年以上是长期)的预测人口数量在各个年龄段的分布。再对预测数据进行分析,并结合中国的实际国情,很容易知道L

3、eslie人口模型增长只能用来预测中短期的人口发展规律(对与中国的实际国情而言) 。于是为了预测探究长期的人口发展模型,我们必须找到更好的模型,结合别人的资料,然后我们又建立了一个有关人口数量的微分方程,这个微分方程包括了各方面影响人口增长和变化的因素,如,育龄女性的百分比,潜在育龄女性的百分比,人口老龄百分比等等。这些因素的介入使得分析人口变化规律更接近实际的情况。随后又建立了另外的模型, 多种模型相互结合 , 是本文的一大特色 . 关键字:Malthus 模型灰色模型Leslie 人口模型神经网络名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -

4、- - - - - 名师精心整理 - - - - - - - 第 1 页,共 15 页 - - - - - - - - - 2 一、问题重述中国是一个人口大国,人口问题始终是制约我国发展的关键因素之一。根据已有数据,运用数学建模的方法,对中国人口做出分析和预测是一个重要问题。近年来中国的人口发展出现了一些新的特点,例如,老龄化进程加速、出生人口性别比持续升高, 以及乡村人口城镇化等因素,这些都影响着中国人口的增长。2007年初发布的国家人口发展战略研究报告( 附录 1) 还做出了进一步的分析。关于中国人口问题已有多方面的研究,并积累了大量数据资料。附录2 就是从中国人口统计年鉴上收集到的部分数

5、据。试从中国的实际情况和人口增长的上述特点出发,参考附录2 中的相关数据(也可以搜索相关文献和补充新的数据) ,建立中国人口增长的数学模型,并由此对中国人口增长的中短期和长期趋势做出预测;特别要指出你们模型中的优点与不足之处。二、问题分析对人口的预测主要考虑三方面人口的来源:1. 上一年留下的人口数 - 由前一年人口总数减掉死亡人数2. 新生儿数 - 由当年育龄妇女数和生育率决定3. 流动口数 - 考虑往年的人口流动量对数据进行数据拟合,其中预期的数值就是预算那部分的和。从而得出数据的模型,建立好成熟模型后,就可以对以后进行预测求解。三模型假设1中国大陆人口看作一封闭系统, 没有迁入与迁出2同

6、一年龄组内是无区别的3在0t时刻人口分布情况是已知的4 无重大自然灾害和重大疾病的发生四、符号说明( )nA i第n年年龄为 i 的总人数;( )nb i第n年年龄为 i 的妇女的生育率, 即为第n年年龄为 i 的妇女所生的小孩数与年龄为 i 的妇女的总数之比;( )ndi第n年年龄为 i 的妇女的死亡率;( )ni第n年年龄为 i 的女性占同龄总人数的比例;)(tI t年 15-49 岁的女性人口总数;)(tRI t年 0-15 岁女性人口总数;)(tNI t年各年龄段的男性与50-90+岁女性人口总数之和;)(tNI t年各年龄段人口总数;)(iA 15-49岁中年龄为 i 的女性人口总数

7、; t年 15-49 岁女性死亡率;人口年死亡率;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 15 页 - - - - - - - - - 3 五、建模过程模型建立初期不考虑其他因素干扰,建立简单模型,在分析和建立模型的过程中进一步优化,建立过程如下:模型一:人口指数增长模型(马尔萨斯Malthus ,1766-1834 )1) 模型假设1以 P(t) 表示时刻 t 某地区的人口数,设人口数 P(t) 足够大,可以视做连续函数处理,且P(t)关于t连续可微。2时刻 t

8、 人口增长的速率,即单位时间人口的增长量,与当时人口数成正比,即人口增长率为常数 r 。2) 模型建立及求解据模型假设,在 t 到tt时间内人口数的增长量为ttPrtPttP)()()(,两端除以t,得到)()()(tPrttPttP, 即,单位时间人口的增长量与当时的人口数成正比。令0t,就可以写出下面的微分方程:PrdtdP,如果设0tt时刻的人口数为0p,则( )p t满足初值问题:00)(PtPPrdtdP(1)下面进行求解,重新整理模型方程(1)的第一个表达式,可得dtrPdP,两端积分,并结合初值条件得显然,当0r时,此时人口数随时间指数地增长,故模型称为指数增长模型(或Malth

9、us 模型) 。如下图 1 所示。3) 模型检验与分析注意到0()0lim( )limr t tttP tPe,而我国资源是有限的,考虑到现实生活中主客观因素的影响,不可能是人口无限增长,故指数增长模型(Malthus 模型)对未来人口总数预测非常荒谬,不合常理,应该予以修正。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 15 页 - - - - - - - - - 4 5101520253035510152025304) 模型讨论做进一步的讨论,阐明此模型组建过程中所

10、做的假设和限制是非常必要的。1我们把人口数仅仅看成是时间t的函数)(tp,忽略了个体间的差异(如年龄、性别、大小等)对人口增长的影响。2假定)(tp是连续可微的。这对于人口数量足够大,而生育和死亡现象的发生在整个时间段内是随机的,可认为是近似成立的。3模型所描述的人群应该是在一定的空间范围内封闭的,即在所研究的时间范围内不存在有迁移(迁入或迁出)现象的发生。不难看出,这些假设是苛刻的、不现实的,所以该模型不能用于预测未来人口。模型二:改进的 leslie模型考虑到我国目移民现象很少见, 所以认为中国人口是一个封闭系统。 在这种假设下,下一年人口的数量取决于本年个年龄人口的生育率、死亡率、人口总

11、数和男女比例。具体函数关系如下:01( )( )( )(0)( )(1( )( )(1;)nnnknnnb kk A kiAid iA iiiN用矩阵形式可表示为:1(1,2,.)nnAL An,其中(0)(0)(1)(1)( )( )1(0)0001(1)0001( )nnnnnnnnnbbbiiddLdi(0)(1)( )nnnnAAAA i根据具体情况,比如采集到的数据是按年龄段统计得死亡率、生育率、总人口数及男女比例,我们就不能再按年龄来预测了,此时可以按年龄段来预测。这是一个可按分组的数据来预测下一个时刻情况的模型。针对本次竞赛所给数据是按年龄统计到90 岁(90岁和 90 岁以上的

12、人归为同一组) ,故我们可将上述矩阵写为92 行 91 列的矩阵,如下名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 15 页 - - - - - - - - - 5 (0)(0)(1)(1)(89)(89)(90)(90)1(0)00001(1)000001(89)0nnnnnnnnnnnbbbbdLdd(0)(1)( )(90)TnnnnnAAAA iA111111(0)(1)( )(90)(91)TnnnnnnAAAAiAA,此时,1( )(1)nnAiLAi,即9

13、001)()()()0(knnnnkAkkbA9010( )(1(1)(1) (1,2,91)nnnnAidiAii在第n年此模型死亡率、 生育率、总人口数及男女比例已知时, 我们就能够预测出第1n个年龄的人口数,当然经过简单处理之后,还可得各年龄段的人口总数。通过作个年龄段的死亡率的散点图发现,各年龄段死亡率基本稳定在一个常数值附近(图 2) ,并且在近些年不会发生重大的医学进步,所以我们可以假设死亡率为一个常数,并且在计算过程中用2001-2005 的平均死亡率代替它。通过2001-2005 生育率的散点图(图 1)可以发现 2003年的生育率情况偏离其他年份的情况,而其他几年的情况图像形

14、状相似,因此剔除03 年的数据,用剩余四年的平均出生率作为生育率的估计值,即也假设出生率为一常数。通过统计数据发现出生性别基本稳定在1.06 附近,所以也假定生育率为常数。在这些假设下即可对我国人口数量进行预测。利用2001 年的各年龄段的人口数量为基 , 做各年份预测 , 误差图见附录;所以可以得出对5 岁到 75 岁之间的预测准确度是很高的。在此基础上通过拟合用2001 的数据用此模型预测2002-2005的人口情况,发现拟合很好(见附录图 1) ,这说明此模型可进行短期和中长期预测并且效果令人满意。在附录中给出了对2008 年各年龄段人数的预测。同时也给出了长期预测(对 2040 年的预

15、测 ) 。但是对于长期预测此模型效果不太理想(见附录(图 2)) 。01020304050607080901000204060801001201401601802002年出生率(图 1)2001-2005 年各年龄段生育率比较名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 15 页 - - - - - - - - - 6 0102030405060708090100051015202530(图 2) 2001-2005 个年龄段死亡率比较此时,1( )(1)nnAiLAi

16、,这里(0)(0)(1)(1)(1)(1)( )( )1(0)00001(1)000001(1)0nnnnnnnnnnnbbb iib iidLdd i(0)(1)( )()TnnnnnAAAA iA m即10(0)( )( )( )mnnnnkAbkk Ak10( )(1(1)(1) (1,2,)mnnnnAidiAiim通过矩阵乘法可得0kn kAL A(0,1,2,)im由上述公式,可以预测第k 年的人口数量。优点:此模型的优点是在满足假设的前提下能够非常准确的预测出下一年的人口数。缺点:过分依赖于前一年的死亡率、生育率、总人口数及男女比例,只有这些参数已知时,才能预测此下一年,并只能预

17、测一年。模型三:微分差分混和模型考虑到中国迁入迁出人口所占总人口数比例较小,故假设中国人口为一封闭系统,于是基于微分差分的思想,建立微分差分混合模型。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 15 页 - - - - - - - - - 7 0000)0(,)0(,)0(,)0()()() 1()()()()()()()()()()()()()()(NNNINIRIRIIItItRItItItNtRItNtIdttdNtItRIdttdItNtNItRItI参数的求

18、解公式:)()49()49(tIkAA)()15()15(tRIkAA方程 1:中国人口组成的刻画;方程 2:育龄女性数目的变化趋势;方程 3:中国总人口的变化趋势;方程 4:育龄女性人口数的变化方程 5:给个变量赋予初值利用 2001 年的数据可解得参数如下:0.13436516,0.00110974,0.0997971,0.0059342,0.11088373上述模型中个变量的解析解悟求得,但是数值解可以应用龙格- 库塔法,进行编程求得近似值。优点:该模型全面考虑了各种因素对人口总数等的影响,计算结果应该比较贴近实际情况缺点:较难以计算出连续数值模型四:神经网络模型人脑神经网络模型能模拟人

19、脑神经组织的运行机制,因此具有较强的信息处理能力,对复杂问题具有自适应和自学习的能力,可以很好的协调多种输入信息的关系。神经网络因其自身的自适应,自学习性,高效性,具有可逼近任意非线性系统的能力而成为系统辩识及预测的有力工具。我们将中国人口的变化看作一非线性的输入输出系统:( )( (1), (),(1), ()yuy tf y ty tnu tu tn;其中( )u t为影响整个系统的控制因素,(1),()yy ty tn为系统前yn次输出对系统新的输出的反馈影响。 我们采用并联识别模型的离散时间的动态神经网络来识别此非线性系统,并做出相应的预测:网络的设计:我们借助多层前向 BP 网络(

20、Back-Propagation Network)令?( )y t(,N A ?(1),y t?(),(1), ()yuy tnu tu tn;将?()y ti经过i 步时延反馈到网络的输入端 , 对网络的权值、阈值不断修改,进行自适应训练,以跟踪网络输入样本值的变化,达到对未来值的预测。其中?( )y t?(), ()(1,2,)uy tiu tjin为神经网络的输入,?( )y t为神经网络的输出,代名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 15 页 - - -

21、 - - - - - - 8 表神经网络的权空间。建立以出生率,死亡率,性别比以及老龄化作为四个神经元的输入样本,以全国总人口数作为一个神经源元的输出样本,通过神经网络,进行模型训练,并预测第N年全国的总人数。网络的几个主要参数:1. 网络层数、结点数的确定:如果网络过于复杂,就不利于网络学习的收敛,得不到良好的学习结果。因此,在确定输入层时,我们仅选择下一个输出值的前9个已确定样值和 t 作为网络输入层的输入结点。由于 9个样值点之间取值差异可能很大,这样的输入数据不利于网络学习及收敛,因此将数据除以一个整数100N对数据进行压缩(如:累计病例作为输入时最大最小可相差 1000 多,我们选取

22、 N=80,数据压缩到 0,13 范围内)。对于输出层,采用单节点形式。对于隐层,我们采用隐层个数为输入层的一半,即5 个。2. 网络各层激活函数的确定及算法的选用:我们采用了 BP 网络经典的 Sigmoid 传递函数:1( )1xf xe和改进 BP 算法(动量法 +学习自适应调整策略)对网络进行训练。3训练次数 1000 次详细算法步骤如下:Step 1: 初始化:令i =1; 设定预测年数 N ;Step 2: 用过去以有的 n 个样点值 (n 代表天数 ) , 设为P= ip,1ip, 1n ip 用作为网络输入的样本向量,用 BP 算法训练此网络:计算各层接收向量Z 及输出向量 y

23、;利用实际输出 y 与该样本理想输出 D 的差值反向修改前面各层的权值矩阵 A, 使权值的改变方向沿着负导数方向, 使实际输出尽量逼近理想输出, 最后在激励()u ni下得到将来的一个预测点值1np; Step 3: 将预测出的1np加入阳电值集合 P,并执行/ippp,将元素ip从集合 P中除去,1ii;Step 4 :若i 未达到设定的预测天数 N ,转Step 2 ,否则推出系统循环。Step 5 :在同一坐标系中作出预测值和实际采样值曲线; 年份出生率(0/00) 死亡率(0/00) 老龄化(0/0) 性别比总人口 (万/1000)1997 16.57 10.06 6.936 1.04

24、4 123.626 1998 15.64 9.14 7.039 1.051 124.761 1999 14.64 8.18 7.431 1.059 125786 2000 14.03 7.58 7.633 1.067 126.743 2001 13.38 6.95 6.961 1.06 127.627 2002 12.86 6.45 8.163 1.061 128.453 2003 12.41 6.01 8.508 1.062 129.227 2004 12.29 5.87 8.563 1.063 129.988 2005 12.4 5.89 9.073 1.063 130.756 名师资料总

25、结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 15 页 - - - - - - - - - 9 模型五:灰色模型灰色系统是指部分信息已知、部分信息未知的系统, 它介于一无所知的黑色系统与全部确知的白色系统之间, 人口系统正是这样一个灰色系统。影响人口增长变化的因素很多, 其中不乏一些不确定因素, 用灰色系统预测法对人口变动进行分析、预测, 可以为国家制定合理的人口控制政策、为各级政府制定相应的人口管理目标, 提供科学的决策依据。实际灰色建模中,系统的原始序列数据不一定全部用来建模

26、,不同维数( 或长度 )序列建模,所得参数 a,b 的值是不一样的,因而模型的预测效果也不同,这里,我们选取中长序列 (1991-2004 年)、短序列分别对 2005年全国人口进行模拟预测,通过比较分析得出最佳预测序列。1. 中长序列灰色增量模型对全国人口的检验及预测(1) 中长序列灰色增量模型对 2005年全国人口的模拟预测普通灰色增量模型的模拟预测公式: X(t+ i)=-6213.759*exp(-0.05598469*t)+(27561.759),t= 1,2,3,. 新初值灰色增量模型的模拟预测公式: X(k) =- 13396.759*exp(-0.05598469*(k-n)+

27、(27561.759),k=1,2,3,. 离散灰色增量模型的模拟预测公式: Xl1(k+l)=0.9503X0 )(k)+ 15 28.58,k=1,2,3,. 下表给出这三种模型对 2005年全国人口检验性预测结果的比较。三种灰色模型对 2005年全国人口数总量模拟预测比较模型IGM 模型新初值 IGM 模型离散IGM 模型实际值130756 130756 130756 预测值130717.01 130717.41 130737.48 残差38.99 38.59 18.52 相对误差0.298 0.295 0.142 均方差比值0.0042 0.0040 0.0029 (2) 中长序列灰色

28、增量模型对未来50年全国人口的预测名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 15 页 - - - - - - - - - 10 20052010201520202025203020352040204520501.31.321.341.361.381.41.421.441.461.481.5x 105lisanlianxuIGM2. 短序列灰色增量模型对全国人口的检验及预测(1) 短序列灰色增量模型对 2005年全国人口的模拟预测,为筛选合适的模型,这里分别选取5.9

29、 维短序列建立灰色增量模型、新初值灰色增量模型和离散灰色增量模型,对我国总人口数进行检验性预测。普通灰色增量模型的模拟预测公式: X(t+ l)= -17143.853*exp(-0.05244452*t)+(18100.853), t=1,2,3,. 新初值灰色增量模型的模拟预测公式: X(k ) =-138 98 .853*exp(-0.05244452*(k-n)+(18100.853), k=1,2,3,离散灰色增量模型的模拟预测公式: X11(k +l )=0.9628X1 1(k) + 9 00.1719 k= 1,2,3,. 经比较 ,采用 6维模型建立最优预测模型,下表给出这三

30、种模型对2005年全国人口检验性预测的检验比较。三类灰色模型对 2005年全国人口总里模拟预测的比较( 单位; 万人) 模型IGM 模型新初值 IGM 模型离散IGM 模型实际值130756 130756 130756 预测值130698.13 130685.90 130686.00 残差57.87 70.10 0.00 相对误差 (%o) 0.443 0.536 0.535 均方差比值 C 0.0003 0.0005 0.0002 小误差概率 P 1 1 1 (2 ) 短序列灰色增量模型对未来全国人口的预测名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - -

31、- - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 15 页 - - - - - - - - - 11 200520102015202020252030203520402045205020551.31.321.341.361.381.41.421.441.461.48x 105lisanlianxueigm经过比较分析,中长序列和短序列灰色模型在全国人口总量上的预测精确度较高,且三类灰色模型在每一种序列中的预测值相差无几,这表明灰色增量模型关于全国总人口的预测是十分合理而有效的。 同时我们看到中长序列灰色模型在全国人口总量上的预测值偏小,短序列灰色模型在全国

32、人口总量上的预测值偏大,可将中长序列、短序列的预测结果联合起来作为中国未来总人口的预测区间,即以短序列预测值为上限,而将中长序列的相应结果作为下限,全国人口预测值则形成一个喇叭状的预测灰区间,因此,将较为远期的预测值视为规划值可能更为恰当。分析与讨论1. 综上可知,运用灰色增量模型,弱化了干扰因素,揭示了系统的运行规律,因而对全国总人口的预测具有更高的精度。在确保当前人口系统运行的条件下,应有以下预测结论: (1) 到2010年中国总人口增长率将下降到4.61%o左右,到 2025年将达到现在发达国家总人口增长率 2.5%0的水平。(2) 2006 到2010年,中国每年净增人口数将由715万

33、逐步下降到 600万左右 : 到2030年,年净增人口数为约 300万; 而到2050年,年净增人口数将在 130万左右。到那时,中国人口将基本实现零增长。(3) 2006年底中国人口将为 13.147亿,到 2010年底,中国人口将不超过13.5亿,到 2030年将最多达到 14.255亿;2040 年最多为 14.5亿,而到 2050年最多达 14.653亿,中国未来的人口峰值不会超过 14.8 亿。2. 当前,我国在逐步解决人口数量问题的同时,人口结构问题日趋突出,面临着出生人口性别比严重失衡、出生缺陷人口居高不下、过快进入老龄化社会,未来20-30年,中国将先后面临劳动年龄人口、老龄人

34、口和总人口这三大人口高峰的严峻考验,为此我们必须充分做好各项应对准备。3最近,有关中国正处于“人口红利”期的报道,曾引起媒体和社会各界的关注。虽名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 15 页 - - - - - - - - - 12 然这个时期就业压力非常大,却是经济发展的黄金时期。现在人们谈及中国所取得的经济发展成果时,多与改革开放相联系其实,“人口红利”也是一个极其重要的因素。中国的“人口红利”还能维持10年,最多 15年。预计到 21世纪30年代,中国老

35、龄化将达到高峰,城镇的养老负担将大幅提高,医疗费用也随之大大加重。据统计,2015年中国老年人人数将突破 2亿,而到 2040年将达到 4亿。五参考文献:1 邓聚龙 灰色系统理论教程华中理工大学出版社 1990 2 中华人民共和国国家统计局全国人口普查公报 3 胡守信 李柏年基于 MATLAB 的数学试验科学出版社 2004 4 杜廷松数值分析及试验科学出版社 2006 六附录:0102030405060708090-1-0.500.511.522002200320042005图 (1)各年份预测人口数量与实际人口数量的相对误差名师资料总结 - - -精品资料欢迎下载 - - - - - -

36、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 15 页 - - - - - - - - - 13 0102030405060708090024681012x 104204020082005real2005图( 2)2005 年真实值( 2005real)和各年预测值做比较Leslie 人口改进模型(死亡率,生育率变化)JAVA 程序package model; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; impo

37、rt java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; public class NextPrediction public static void main(String args) double a0 = new double92; / 第 n 年年龄为0 岁的人口总数double b0 = new double91; / 第 n 年年龄为 0 岁的人的生育率d

38、ouble c0 = new double91; / 第 n 年年龄为 i 岁的女性占i 岁人口总数的比例double d0 = new double91; / 第 n 年年龄为 i 岁的人口的死亡率/* * 初始化文件:* a0.txt: 初始化第n 年年龄为0 岁的人口总数,每个数据占一行* b0.txt: 初始化第 n 年年龄为0 岁的人的生育率,每个数据占一行* c0.txt: 初始化第n 年年龄为i 岁的女性占i 岁人口总数的比例,每个数据占一行* d0.txt: 初始化第n 年年龄为i 岁的人口的死亡率,每个数据占一行名师资料总结 - - -精品资料欢迎下载 - - - - - -

39、 - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 15 页 - - - - - - - - - 14 */ if(args.length != 4) System.out.println(Usage:); System.out.println(java model.Main a0.txt b0.txt c0.txt d0.txt); System.exit(-1); try BufferedReader in = new BufferedReader(new FileReader(args0); String s; int i=0;

40、while(s = in.readLine() != null) a0i = Double.parseDouble(s); i+; in.close(); / 对第 90 项重新赋值a090 = a089 + a090; in = new BufferedReader(new FileReader(args1); s = in.readLine(); i=0; while(s = in.readLine() != null) b0i = Double.parseDouble(s)*0.001; i+; in.close(); in = new BufferedReader(new FileRe

41、ader(args2); s = in.readLine(); i=0; while(s = in.readLine() != null) c0i = Double.parseDouble(s); i+; in.close(); in = new BufferedReader(new FileReader(args3); s = in.readLine(); i=0; while(s = in.readLine() != null) d0i = Double.parseDouble(s)*0.001; i+; in.close(); catch (FileNotFoundException e

42、) System.out.println(args1 + is not found!); System.exit(-1); catch (IOException e) System.out.println(args1 + can not read correctly!); System.exit(-1); File result = new File(result_next); if(result.exists() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 15

43、页 - - - - - - - - - 15 result.delete(); try result.createNewFile(); catch (IOException e) System.out.println(can not create file + result.getName() + !); System.exit(-1); PrintWriter out; try out = new PrintWriter(new BufferedWriter(new FileWriter(result); / 求首项double first = 0d; for(int k=0; k=90;

44、k+) first += a0k*b0k*c0k; out.println(first); / 求其他项for(int i=1; i=91; i+) double other = (1 - d0i-1)*a0i-1; out.println(other); out.close(); catch (IOException e) System.out.println(result.getName() + can not write correctly!); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 15 页 - - - - - - - - -

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号