java经典算法40例_计算机软件及应用_IT计算机_专业资料

java经典算法40例_计算机软件及应用_IT计算机_专业资料

ID:41568285

大小:79.81 KB

页数:32页

时间:2019-08-27

java经典算法40例_计算机软件及应用_IT计算机_专业资料_第1页
java经典算法40例_计算机软件及应用_IT计算机_专业资料_第2页
java经典算法40例_计算机软件及应用_IT计算机_专业资料_第3页
java经典算法40例_计算机软件及应用_IT计算机_专业资料_第4页
java经典算法40例_计算机软件及应用_IT计算机_专业资料_第5页
资源描述:

《java经典算法40例_计算机软件及应用_IT计算机_专业资料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....publicclassexp2{publicstaticvoidmain(Stringargs[]){inti=0;for(i=l;i<=20;i++)System,out.println(f(i));}publicstaticintf(intx){if(x==l

2、

3、x==2)return1;elsereturnf(xT)+f(x-2);}}或publicclassexp2{publicstaticvoidmain(Stringargs[]){inti=0;mathmymath=newmath();f

4、or(i=l;i<=20;i++)System,out.println(myniath.f(i));}}classmath{publicintf(intx){if(x==l

5、

6、x==2)return1;elsereturnf(xT)+f(x-2);【程序2】题目:判断10—200之间有多少个素数,并输出所有素数。1•程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。publicclassexp2{publicstaticvoidmain(Stringargs[]){inti二0;mathmymath=newma

7、th();for(i=2;i<=200;i++)if(mymath.iszhishu(i)==true)System,out.printin(i);}}classmath{publicintf(intx){if(x==l

8、

9、x==2)return1;elsereturnf(xT)+f(x—2);}publicbooleaniszhishu(intx){for(inti二2;i〈=x/2;i++)if(x%2二二0)returnfalse;returntrue;}}【程序3】题目:打印出所有的”水仙花数n,所谓”水仙花数”是指一个三位数,其各位数字立方和等于该数木身。例如:

10、153是一个”水仙花数",因为153T的三次方+5的三次方+3的三次方。1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。publicclassexp2{publicstaticvoidmain(Stringargs[]){inti=0;mathmymath=newmath();for(i=100;i<=999;i++)if(mymath.shuixianhua(i)==true)System,out.printin(i);}}classmath{publicintf(intx){if(x==l

11、

12、x==2)return1;elseretu

13、rnf(xT)+f(x—2);}publicbooleaniszhishu(intx){for(inti=2;i<=x/2;i++)if(x%2==0)returnfalse;returntrue;}publicbooleanshuixianhua(intx){inti=0,j=0,k=0;i=x/100;j=(x%100)/10;ik二fx%10;(x=i*i*i+j*j*j+k*k*k)returntrue;elsereturnfalse;}}【程序4】题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5o程序分析:对n进行分解质因数,应先找到一个

14、最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步Opublicclassexp2{publicexp2(){}publicvoidfengjie(intn){for(inti=2;i<=n/2;i++){if(n%i==0){System,out.print(i+〃*〃);fengjie(n/i);}}System,out.print(n);Syst

15、em.exit(0);///不能少这句,否则结果会出错}publicstaticvoidmain(String[]args){Stringstr=";exp2c=newexp2();str=javax.swing.JOptionPane.showlnputDialog(〃请输入N的值(输入exit退出):“);intN;Nt=rOy;{N二Integer.parseint(str);}catch(NumberFormatExceptione){e.printStackTrace();}System,out.print(N+〃分

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

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

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