您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《Java程序设计》上机实验 (2)
第1页班级号_学号_姓名_题号.java(多文件应压缩为rar):实验1:熟悉上机环境,编写并运行简单的java程序(3学时)实验目的(1)熟悉Java程序开发环境(2)熟悉JavaApplication和Applet程序的结构及开发步骤(3)熟练掌握if语句的使用(4)掌握Math.sqrt()等常用数学函数的用法(5)熟悉System.out.print()的用法实验内容及要求按JavaApplication和Applet两种方式分别编写程序,求一元二次方程ax2+bx+c=0的根(系数在程序中给定),并输出。1、publicclasswyy{publicstaticvoidmain(String[]w){floata=1,b=5,c=3,d=0,t=0;floatk=0,j=0;k=b*b-4*a*c;j=(float)Math.sqrt((float)k);d=(-b+j)/4*a*c;t=(-b-j)/4*a*c;if(k0)System.out.println(无根!);elseif(k0){System.out.println(第一个根为:+d);System.out.println(第二个根为:+t);}elseif(k==0)System.out.println(有一个根+d);}}2、importjava.awt.*;importjava.applet.*;publicclasswyy1extendsApplet{publicvoidpaint(Graphicsg)a/b/c/d第2页{floata=1,b=5,c=3,d=0,t=0;floatk=0,j=0;k=b*b-4*a*c;j=(float)Math.sqrt((float)k);d=(-b+j)/4*a*c;t=(-b-j)/4*a*c;if(k0)g.drawString(无根!,50,50);elseif(k0){g.drawString(第一个根为:+d,50,50);g.drawString(第二个根为:+t,50,100);}elseif(k==0)g.drawString(有一个根+d,50,50);}}3、//importjava.io.*;/*一元二次方程求解其根*/importjava.util.*;publicclasswyy{publicstaticvoidmain(String[]w){Scannerr=newScanner(System.in);floata,b,c,d=0,t=0;floatk=0,j=0,h,f,s;System.out.println(请输入a:);//Scanner输入a的值a=(int)r.nextInt();System.out.println(请输入b:);//Scanner输入b的值b=(int)r.nextInt();System.out.println(请输入c:);//Scanner输入c的值c=(int)r.nextInt();System.out.println(方程式为:+a+x^2++b+x++c);//显示方程式/*求根*/k=b*b-4*a*c;j=(float)Math.sqrt((float)k);d=(-b+j)/2*a;t=(-b-j)/2*a;if(k0)//求复根{k=4*a*c-b*b;第3页j=(float)Math.sqrt((float)k);h=(int)(j/2*a);f=-b/2*a;s=-h;System.out.println(有两个复根,这两个复根为:);System.out.println(第一个根为:x1=+h+i+f);System.out.println(第二个根为:x2=+s+i+f);}elseif(k0)//求实根{System.out.println(有两个实根,这两个实根为:);System.out.println(第一个根为:x1=+d);System.out.println(第二个根为:x2=+t);}elseif(k==0){System.out.println(有两个相同实根,这个实根为:);System.out.println(有一个根:x=+d);}}}思考并验证(1)分别给定以下几组系数,给出输出结果a=1,b=5,c=3a=4,b=4,c=1a=2,b=3,c=2:+i+i(2)如果程序的public类的类名和源文件的文件名不一样会有什么问题?(3)将类的public修饰去掉是否可行?接着再将类名换为其它是否可行?这说明了什么?不可以(4)将程序中main前面的public去掉,重新编译执行你的程序,你看到了什么信息?mainmethodnotpublic(5)将程序中main前面的static去掉,重新编译执行你的程序,你看到了什么信息?为什么?Fatalexceptionoccurred.Programwillexit.(6)本次上机中,你还遇到了什么问题,是如何解决的?班级号_学号_姓名_题号.java(多文件应压缩为rar):实验2:控制流程1(3学时)实验目的第4页(1)进一步熟悉使用if语句(2)掌握循环语句实现循环的方法实验内容及要求输出时,只使用下面的语句:System.out.print(“”);//输出一个空格,并且不换行System.out.print(“*”);//输出一个字符’*’,并且不换行System.out.print(“+”);//输出一个字符’+’,并且不换行System.out.println(“*”;)//输出一个字符’*’,并换行编写程序输出(注:在图形的中心处有一个加号’+’):************+************publicclass图形{publicstaticvoidmain(String[]args){inti,j,k;for(i=0;i=2;i++){for(j=0;j=2-i;j++)System.out.print();for(k=0;k=2*i;k++)System.out.print(*);System.out.print(\n);}for(i=0;i7;i++){if(i3)System.out.print(*);if(i==3)System.out.print(+);if(i3)System.out.print(*);}System.out.print(\n);for(i=0;i=2;i++){for(j=0;j=i;j++)System.out.print();for(k=0;k=4-2*i;k++)第5页System.out.print(*);System.out.print(\n);}}}思考并验证下面程序片段给出了从键盘输入一个整数的方法:importjava.io.*;InputStreamReaderir;BufferedReaderin;ir=newInputStreamReader(System.in);in=newBufferedReader(ir);try{Strings=in.readLine();inti=Integer.parseInt(s);//转换成整形}catch(IOExceptione){}(1)如何修改程序,使得输出的图形可以很方便的在水平方向上移动?importjava.util.*;publicclasswyy1{publicstaticvoidmain(String[]args){Scannerr=newScanner(System.in);inti,j,k,a,b;System.out.print(请输入平移量a:);a=r.nextInt();//System.out.print(请输入行数b:);//b=r.nextInt();for(i=0;i=2;i++){for(j=0;j=2-i+a;j++)System.out.print();for(k=0;k=2*i;k++)System.out.print(*);System.out.print(\n);}for(j=0;ja;j++)System.out.print();for(i=0;i7;i++){if(i3)System.out.print(*);if(i==3)第6页System.out.print(+);if(i3)System.out.print(*);}System.out.print(\n);for(i=0;i=2;i++){for(j=0;j=i+a;j++)System.out.print();for(k=0;k=4-2*i;k++)System.out.print(*);System.out.print(\n);}}}(2)如何修改你的程序,按输入行数n(为奇数)输出图形?importjava.util.*;publicclasswyy1{publicstaticvoidmain(String[]args){Scannerr=newScanner(System.in);inti,j,k,a,b;System.out.print(请输入平移量a:);a=r.nextInt();System.out.print(请输入行数b:);b=r.nextInt();for(i=0;i=b/2-1;i++){for(j=0;j=b/2-1-i+a;j++)System.out.print();for(k=0;k=2*i;k++)System.out.print(*);System.out.print(\n);}for(j=0;ja;j++)System.out.print();for(i=0;ib;i++){if(ib/2)System.out.print(*);if(i==b/2)System.out.print(+);if(ib/2)System.out.print(*);}第7页System.out.print(\n);for(i=0;i=b/2-1;i++){for(j=0;j=i+a;j++)System.out.print();for(k=0;k=b-3-2*i;k++)System.out.print(*);System.out.print(\n);}}}选作:编程求支付方法的种数:取1元,2元,5元纸币10张,付给18元,有几种办法?importjava.util.*;Scannerr=newScanner(System.in);r.nextInt();r.nextDouble();(C++版)#includeiostream.hintmain(){intx,y,z,counter=0;for(x=0;x10;x++)for(y=0;y10;y++)for(z=0;z10;z++){if((x+y+z)=10&&(5*x+2*y+z)==18)counter++;}coutcounterendl;return0;}publicclasswyy{publicstaticvoidmain(String[]args){intx,y,z,counter=0;for(x=0;x10;x++)for(y=0;y10;y++)for(z=0;z10;z++){if((x+y+z)=10&&(5*x+2*y+z)==18)counter++;}System.out.println(回文数共有:+counter+个!);第8页}}班级号_学号_姓名_题号.java(多文件应压缩为rar):实验3:控制流程2(3学时)实验目的(1)掌握数据类型的含义(2)掌握break语句的使用(3)掌握用三种循环语句实现循环以及循环嵌套的方法实验内容及要求编程,计算11+22+33+……+66importjava.util.*;//importjava.awt.*;publicclasswyy1{publicstaticv
本文标题:《Java程序设计》上机实验 (2)
链接地址:https://www.777doc.com/doc-4614442 .html