JAVA皮常德27章答案解析文档格式.docx

上传人:b****6 文档编号:8511723 上传时间:2023-05-11 格式:DOCX 页数:27 大小:39.27KB
下载 相关 举报
JAVA皮常德27章答案解析文档格式.docx_第1页
第1页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第2页
第2页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第3页
第3页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第4页
第4页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第5页
第5页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第6页
第6页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第7页
第7页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第8页
第8页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第9页
第9页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第10页
第10页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第11页
第11页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第12页
第12页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第13页
第13页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第14页
第14页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第15页
第15页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第16页
第16页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第17页
第17页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第18页
第18页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第19页
第19页 / 共27页
JAVA皮常德27章答案解析文档格式.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

JAVA皮常德27章答案解析文档格式.docx

《JAVA皮常德27章答案解析文档格式.docx》由会员分享,可在线阅读,更多相关《JAVA皮常德27章答案解析文档格式.docx(27页珍藏版)》请在冰点文库上搜索。

JAVA皮常德27章答案解析文档格式.docx

if(j!

=1){

a=false;

break;

System.out.println(a);

}

运行结果:

true

小程序:

importjava.awt.*;

importjava.applet.*;

publicclassa5extendsApplet{

Labellab1;

TextFieldinput1;

intnum1=1;

publicvoidinit(){

lab1=newLabel("

任意输入3~10000的一个整数"

);

input1=newTextField(10);

add(lab1);

add(input1);

publicbooleanaction(Evente,Objecto){

num1=Integer.parseInt(input1.getText());

showStatus("

"

input1.setText("

repaint();

这个数是"

+num1);

returntrue;

publicvoidpaint(Graphicsg){

intxpos=50,ypos=50,i=0;

intxpos1=xpos;

while(num1!

=1)

{

if(num1%2==0){

num1=num1/2;

g.drawString(Integer.toString(num1),xpos,ypos);

num1=num1*3+1;

xpos=xpos+50;

i++;

if(i%5==0)

ypos=ypos+10;

xpos=xpos1;

2.

程序:

publicclassa6extendsApplet{

Labellab;

TextFieldinput;

inta,b,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12;

doublei2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12;

lab=newLabel("

输入次数"

input=newTextField(10);

add(lab);

add(input);

inttime=Integer.parseInt(input.getText());

input.setText("

模拟次数"

+time);

t2=t3=t4=t5=t6=t7=t8=t9=t10=t11=t12=0;

for(inti=1;

=time;

a=(int)(Math.random()*6+1);

b=(int)(Math.random()*6+1);

switch(a+b){

case12:

t12++;

case11:

t11++;

case10:

t10++;

case9:

t9++;

case8:

t8++;

case7:

t7++;

case6:

t6++;

case5:

t5++;

case4:

t4++;

case3:

t3++;

case2:

t2++;

i12=(double)t12/i;

i11=(double)t11/i;

i10=(double)t10/i;

i9=(double)t9/i;

i8=(double)t8/i;

i7=(double)t7/i;

i6=(double)t6/i;

i5=(double)t5/i;

i4=(double)t4/i;

i3=(double)t3/i;

i2=(double)t2/i;

//repaint();

g.drawString("

各种和的概率:

25,40);

12:

+i12,25,55);

11:

+i11,25,70);

10:

+i10,25,85);

9:

+i9,25,100);

8:

+i8,25,115);

7:

+i7,25,130);

6:

+i6,25,145);

5:

+i5,25,160);

4:

+i4,25,175);

3:

+i3,25,190);

2:

+i2,25,205);

一、实验内容:

1.采用循环语句打印如下图形:

**

****

******

********

2.编写一个applet,采用公式:

ex=1+x1/1!

+x2/2!

+……..+xn/n!

.

三、实验步骤:

1.程序:

packagecp3;

publicclassa1extendsApplet{

inta,b[]=newint[20],i,j;

输入数字"

a=Integer.parseInt(input.getText());

}

for(inti=0;

a!

=0;

b[i]=a%10;

a/=10;

for(j=0;

b[j]!

j++);

for(intt=--j;

t>

t--){

g.drawString(Integer.toString(b[t]),j*20-t*20,55);

for(i=0;

b.length;

b[i]=0;

****

******

********

**********

Labellab1,lab2;

TextFieldinput1,input2;

inta,b,i;

doublesum=0;

publicclassaa{

intmult(intn){

ints=1;

for(intj=1;

j<

=n;

j++)

s*=j;

returns;

输入x大小"

lab2=newLabel("

输入n值"

input2=newTextField(10);

add(lab2);

add(input2);

a=Integer.parseInt(input1.getText());

b=Integer.parseInt(input2.getText());

input2.setText("

sum=0;

aac=newaa();

=b;

sum+=(double)(Math.pow(a,i))/(double)c.mult(i);

结果为"

+sum);

输入x=1,n=30时的运行结果:

二、实验内容:

1.定义一个类,它包含了一个int类型的变量x、若干个构造函数(根据你的需要)和一个输出方法show( 

)。

编程:

从键盘输入一个数,将这个数传递给这个类的x,采用方法show( 

)逆序输出这个数。

2.定义一个整形集合类integerSet。

这种类型的对象可以存储10个20至80之间的整数,即它的内部有一个整形数组存储数据。

编程:

(1) 

判断两个integerSet类对象S1和S2是否相等。

提示:

集合相等的前提是所有元素相等。

(2) 

输出两个集合对象的交集。

(3) 

输出两个集合对象的并集。

(4) 

将一个整形数据插入到一个集合对象中。

(5) 

从一个集合中删除某一个元素。

1.

程序

packagecp4;

classaa{

intx;

aa(intn){

x=n;

voidshow(){

intb=0;

for(;

x!

b=b*10+x%10;

x/=10;

System.out.println(b);

publicclassa1{

intvalue=CP4.readInt();

aaa1=newaa(value);

a1.show();

12345

54321

成功构建(总时间:

3秒)

packagecp4;

classinteger{

inta[]=newint[10];

publicvoidinput(){

inti;

=9;

a[i]=CP4.readInt();

if(a[i]==0)

break;

publicvoidoutput(){

System.out.print(a[i]);

System.out.print('

'

System.out.println();

classuninteger{

inta[]=newint[20];

=19;

classmeans{

inti,j;

publicbooleaneq(integera1,integera2){

if(a1.a[i]==0)

j++){

if(a2.a[j]==0)

if(i!

=j){

returnfalse;

if(a1.a[i]!

=a2.a[i])

publicvoidmix(integera1,integera2,integermix){

intt=0;

i++)

if(a1.a[i]==a2.a[j])

mix.a[t++]=a1.a[i];

elseif(a1.a[i]<

a2.a[j])

publicvoidunion(integera1,integera2,unintegerunion){

intt,s;

i=0;

for(s=0,t=0;

s<

=9&

&

t<

a1.a[s]!

=0&

a2.a[t]!

if(a1.a[s]<

a2.a[t]){

union.a[i++]=a1.a[s];

s++;

elseif(a1.a[s]>

union.a[i++]=a2.a[t];

t++;

t++;

if((a1.a[s]==0||s>

9)&

(t<

=0)){

union.a[i++]=a2.a[t++];

elseif((a2.a[t]==0||t>

(s<

union.a[i++]=a1.a[s++];

publicvoidinsert(integera1,inta){

if(i==10)

System.out.println("

此表已满不能插入"

if(a<

=a1.a[0]){

i>

=1;

i--){

a1.a[i]=a1.a[i-1];

a1.a[0]=a;

elseif(a>

=a1.a[i-1])

a1.a[i]=a;

;

if(a>

=a1.a[j]&

a<

=a1.a[j+1])

j+1;

a1.a[j+1]=a;

System.out.print("

插入后的表一变为:

a1.output();

publicvoiddelete(integera2,inta){

if(a2.a[i]==0)

if(a2.a[a]==0)

所删位置无元素"

for(j=a;

i;

a2.a[j]=a2.a[j+1];

删除后的表二变为:

a2.output();

publicclassa5{

publicstaticvoidmain(String[]args){

booleanf;

inta,b;

integermix=newinteger();

unintegerunion=newuninteger();

integera1=newinteger();

integera2=newinteger();

请以从小到大顺序输入两组(每组个数小于11个)20~80之间的整数,分别以0,0结束"

a1.input();

a2.input();

System.out.print("

表一为:

表二为:

meansm1=newmeans();

f=m1.eq(a1,a2);

if(f)

两个集合相等"

else

两个集合不相等"

m1.mix(a1,a2,mix);

m1.union(a1,a2,union);

两个集合的交为:

mix.output();

两个集合的并为:

union.output();

请输入要插入表一的整数:

a=CP4.readInt();

m1.insert(a1,a);

请输入要删除表二元素的下标:

b=CP4.readInt();

m1.delete(a2,b);

**********************

请以从小到大顺序输入两组(每组个数小于11个)20~80之间的整数,分别以0,0结束

21

32

44

56

78

80

31

46

2132445678800000

31465680000000

两个集合不相等

568000000000

2131324446567880000000000000

21324446567880000

所删位置无元素

1分钟38秒)

三、实验内容

1.写一个类,它具有一个protected数据成员。

在同一个文件内再写第二个类,在这个类内编写一个方法, 

以操作第一类内的protected数据;

2.采用public、private、protected以及友员等成员创建一个类,然后定义这个类的一个对象。

观察在访问所有类成员时会出现哪种类型的编译错误。

三、实验步骤

1.程序

/*a4.java*/

packagecp5;

a4_2b=newa4_2();

b.datause();

/*a4_1.java*/

publicclassa4_1{

inta1=1;

publicinta2=1;

privateinta3=1;

protectedinta4=1;

/*a4_2.java*/

publicclassa4_2{

a4_1a=newa4_1();

publicvoiddatause()

data="

+a.a1);

publicdata="

+a.a2);

//System.out.println("

privitedata="

+a.a3);

//拒绝访问

protecteddata="

+a.a4);

运行结果;

data=1

publicdata=1

protecteddata=1

0秒)

2.程序:

classTest{

publicStringpub;

privateStringpri;

protectedStringprot;

Stringfri;

Test(){

this.pub="

public"

this.pri="

private"

this.prot="

protected"

this.fri="

friendly"

Test

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2