java1-3章答案.doc_第1页
java1-3章答案.doc_第2页
java1-3章答案.doc_第3页
java1-3章答案.doc_第4页
java1-3章答案.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/* 第2章习题4 角谷猜想:任何一个正整数n,如果它是偶数则除以2,如果是奇数则乘以3加上1,这样得到一个新的整数,如继续进行上述处理,则最后得到的数一定是1。编写应用程序和小程序程序分别证明:所有的3至10000的数都符合上述规则。*/ 程序清单/*方法1:采用小程序*/import java.awt.*;import java.util.*;import java.applet.Applet;public class jiaogu extends Appletpublic void paint(Graphics g)int x,n,i=10;for(x=3;x=10;x+)n=x;while(n!=1)if(n%2=0)n=n/2;else n=n*3+1;g.drawString (x+ 符合角谷猜想!,25,25+i);i=i+15;/* *方法2: 采用应用程序 */class jiaogupublic static void main(String args)int x,n,i;for(x=3;xtwo)?one:two;showStatus(max+ 较大!);return true; /* 第2章习题6 编写一个程序模拟同时掷2个骰子。程序要用Math.random( )模拟产生第一个骰子, 然后再产生第二个骰子,将2个结果相加。和等于7的可能性最大,等于2和12的可能性最小。 下图表示了出现36种情况组合。程序模拟掷3600次骰子,判断求和结果是否合理,共有6种情况的和是7, 故在3600次掷骰子的结果中应当有1/6的可能性是7。123456123456723456783456789456789105678910116789101112*/ 程序清单/* * dice.java * * 模拟掷骰子 */public class dice public static void main(String args) / The rate that numbers appeardouble result2;double result7;double result12;int n1, n2;int int1, int2;/ The times numbers appearint times2 = 0;int times7 = 0;int times12 = 0;for (int i = 0; i 3600; i+) / generate random intn1 = (int) (Math.random() * 6 + 1 );n2 = (int) (Math.random() * 6 + 1 );if (n1 + n2) = 2)times2+;else if (n1 + n2) = 7)times7+;else if (n1 + n2) = 12)times12+;result2 = times2 / 3600.0;result7 = times7 / 3600.0;result12 = times12 / 3600.0;System.out.println(和为 2 的次数 : +times2+ 占的比率 : + result2);System.out.println(和为 7 的次数 : +times7+ 占的比率 : + result7);System.out.println(和为 12 的次数 : +times12+ 占的比率 : + result12);/* 第3章习题1 编程:要求输入一个5位整数,将这个数分成独立的数字,并分开显示。例如输入32439则显示 3 2 4 3 9。*/ 程序清单/* * deduct.java */import java.applet.*;import java.awt.*;public class deduct extends AppletString str;TextField input;Label Linput;public void init()Linput=new Label(输入一个整数);input=new TextField(10);add(Linput);add(input);public boolean action(Event e,Object o)if(e.target=input)str=input.getText();showStatus(这个数是:+str);repaint();return true;public void paint(Graphics g)for(int i=0;istr.length();i+)g.drawString(str.charAt(i)+,50+i*10,50);/* 第3章习题2 编程:计算从0 到10的平方和立方值。并以如下格式显示:数 平方 立方0001112483927101001000*/ 程序清单/* * num.java */import java.applet.*;import java.awt.*;public class num extends Appletpublic void paint(Graphics g)g.drawString(数,20,15);g.drawString(平方值,80,15);g.drawString(立方值,140,15);for(int i=0;i=10;i+)g.drawString(+i,20,30+i*20);g.drawString(+i*i,80,30+i*20);g.drawString(+i*i*i,140,30+i*20);/ 采用应用程序如下public class num2 public static void main(String args) int i = 0;int result;System.out.println(数 + 平方 + 立方);for (; i = 10; i+) result = i;System.out.print(i + );result = result * i;System.out.print( + result);result = result * i;System.out.print( + result);System.out.println();/* 第3章习题3 采用循环语句打印如下图形。* * * * */ 程序清单/* * graph1.java */public class graph1 / draw n starsstatic void star(int n) for (int i = 1; i = n; i+) System.out.print(*);/ draw n spacesstatic void space(int n) for (int i = 1; i = n; i+) System.out.print( );public static void main(String args) / the length of spaceint i = 20;/ the length of starint j = 1;for (j = 1; j = 5; j+) star(j);space(i);star(j);i -= 2;System.out.println();/* 第3章习题4 编程:读取一个矩形的边长,然后输出一个空心矩形。例如读入边长5,应当输出:* * * * * * * * * */ 程序清单/* 采用小程序实现 * graph2.java */public class graph2 extends Appletint num;TextField input;Label Linput;public void init()Linput=new Label(Enter an integer:);input=new TextField(10);add(Linput);add(input);public boolean action(Event e,Object o)if(e.target=input)num=Integer.parseInt(input.getText();repaint();return true;public void paint(Graphics g)int i,j;for(i=0;inum;i+)if(i=0|i=num-1)for(j=0;jnum;j+)g.drawString (*,30+10*j,50+10*i);elseg.drawString (*,30,50+10*i);g.drawString (*,30+10*(num-1),50+10*i);/* 采用应用程序实现 * graph2_1.java */public class graph2_1 private int number;public NO_2_4(int number) this.number = number;draw(number);/ draw squarepublic void draw(int n) if (n = 1)System.out.println(*);else stars(n);System.out.println();for (int i = 0; i n; i+) stars(1);space(n - 2);stars(1);System.out.println();stars(n);System.out.println();/ draw starsstatic void stars(int n) for (int i = 1; i = n; i+) System.out.print(*);/ draw spacesstatic void space(int n) for (int i = 1; i = n; i+) System.out.print( );public static void main(String args) graph2_1 temp = new graph2_1(7);/* 第3章习题5 编程:输入一个数,判断输入的这个数是否为廻文。所谓廻文数就是从左向右看和从右向左看都一样。例如:121、13431都是廻文,而12345不是廻文。*/ 程序清单/* 采用小程序实现 * huiwen.java */import java.awt.*;import java.applet.*;public class huiwen extends AppletTextField input;Label message;boolean b=true;public void init()message=new Label(请输入你需要判断的数:);input=new TextField(10);add(message);add(input);showStatus(start.);public boolean action(Event e,Object o)String str;b=true;if(e.target=input)str=input.getText();for(int i=0,j=str.length()-1;ij;i+,j-)if(str.charAt(i)!=str.charAt(j)b=false;repaint();return true;public void paint(Graphics g)if( b )g.drawString(input.getText()+是回文,50,100);elseg.drawString(input.getText()+不是回文,50,100);showStatus(done);/* 第3章习题6 采用下列公式计算ex的值:ex =1+x1/1!+ x2/2!+xn/n!。从键盘输入x和n,编程计算ex的值。*/ 程序清单/* * expi.java */import java.awt.*;import java.applet.*;public class expi extends Appletdouble result;int x;Label express1=new Label(e 的);TextField field=new TextField(5); Label express2=new Label(次方:); public void init()add(express1);add(field); add(express2);int factor(int n)/ 计算 n!int t=1;for(int i=1;i=n;i+)t=t*i;return t; int f(int x , int n)/ 计算 xnint t=1;for(int i=1;i1e-12)temp=(double)f(x,n) / factor(n);result += temp;n+;showStatus(结果是:+result);repaint();return true; /* 第3章习题7 编程:产生20个int类型的随机数,针对每个数使用if-th

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论