




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言 实验一1、 实验目的 1、掌握下载Java SDK软件包。 2、掌握编写与运行Java程序的方法。 3、实现简单的算法设计。2、 实验题目 1、打印出所有的“水仙花数”,所谓的“水仙花数”,是指一个3位数,其各位数字的立方和等于该数字本身,例如:153是一个“水仙花数”,153=13+53+33 2、编程求Fibonacci数列的前20项,并判断2178309是不是Fibonacci数列中的数,如果是判断它是第几个数。 3、回文是指正向读和反向读都一样的一段文字或数字。请编写程序判断一个5位数是否是回文数。试想如何判断任意一个数是否是回文数? 4、编程实现如下图形:11211242112484211248168421124816321684211248163264321684211248163264128643216842112481632641282561286432168421试问:如何实现可以输出任意多行?3、 实验程序 package Test; import java.util.Scanner; public class MyTest01 public static void main(String args)narcNum();fibNum(20);/*打印出所有的“水仙花数”,所谓的“水仙花数”,是指一个3位数,其各位数字的立方和等于该数字本身*/public static void narcNum() for(int x=100;x1000;x+)int temp=x%10;int temp1=(x/10)%10;int temp2=x/100;if(x=(temp*temp*temp+temp1*temp1*temp1+temp2*temp2*temp2) System.out.println(x);/*编程求Fibonacci数列的前20项, * 并判断2178309是不是Fibonacci数列中的数, * 如果是判断它是第几个数。*/public static void fibNum(int n) long arr=new longn;arr0=1;arr1=1;for(int x=2;xn;x+) arrx=arrx-1+arrx-2; for(int x=0;xn;x+) if(x=2178309) System.out.println(2178309是Fibonacci数列的+x+项); System.out.println(x);/*回文是指正向读和反向读都一样的一段文字或数字。 * 请编写程序判断一个5位数是否是回文数。试想如何判断任意一个数是否是回文数?*/ public static void palindrome()Scanner sc=new Scanner (System.in);System.out.println(请输入数字。用来判断是否为回文数);String str =sc.nextLine();sc.close();StringBuffer buff=new StringBuffer(str);buff.reverse();String str1=buff.toString();if(str.equals(str1) System.out.println(str+是回文数); else System.out.println(你输入不是回文数);/*4、编程实现如下图形:11211242112484211248168421124816321684211248163264321684211248163264128643216842112481632641282561286432168421试问:如何实现可以输出任意多行?*/ public static void print() Scanner sc=new Scanner (System.in); System.out.println(请输入行数); int n=sc.nextInt(); sc.close(); for (int x=1,y=n;x1) for (int sta=1,end=arr.length-2;sta=end;sta+,end-) arrsta=arrend=2*arrsta-1;for (int s=0;sy;s+) System.out.print(t);for(int i=0;iarr.length;i+) System.out.print(arri+t);System.out.println();4、 实验结果1、所有的水仙花数有153、370、371、407。2、Fibonacci数列的前20项:0、1、1、2、3、5、8、13、21、34、55、89、144、233、377、610、987、1597、2584、4181 2178309是Fibonacci数列中的数,第32个数Java语言 实验二5、 实验目的掌握字符串和数组的基本方法。6、 实验题目1、利用二维数组实现杨辉三角的存储和打印。图示如下111121133114641151010511615201561172135352171182856705628811936841261268436912、编程实现魔方阵。魔方阵是指方阵的每一行、每一列和对角线之和均相等。魔方阵的排列方法如下:如33的魔方阵: 8 1 6 3 5 7 4 9 2 魔方阵的排列规律如下: (1)将1放在第一行中间一列; (2)从2开始直到nn止各数依次按下列规则存放;每一个数存放的行比前一个数的行数减1,列数加1(例如上面的三阶魔方阵,5在4的上一行后一列); (3)如果上一个数的行数为1,则下一个数的行数为n(指最下一行);例如1在第一行,则2应放在最下一行,列数同样加1; (4)当上一个数的列数为n时,下一个数的列数应为1,行数减去1。例如2在第3行最后一列,则3应放在第二行第一列; (5) 如果按上面规则确定的位置上已有数,或上一个数是第一行第n列时,则把下一个数放在上一个数的下面。例如按上面的规定,4应该放在第1行第2列,但该位置已经被占据,所以4就放在3的下面;(6) 然后实现5阶魔方阵7、 实验程序 package Test;import java.util.Scanner;public class MyTest02 public static void main(String args) /fun();Magic m=new Magic(0);m.printMagic();/*1、利用二维数组实现杨辉三角的存储和打印。*/public static void fun() Scanner sc=new Scanner (System.in); System.out.println(请输入行数); int num = sc.nextInt(); sc.close(); int m=new int num; for(int i=0;im.length;i+) mi=new inti+1; mi0=1;mii=1; for(int j=0;j=1&i1) mij=mi-1j-1+mi-1j; for(int i=0;im.length;i+) for(int j=0;jmi.length;j+) System.out.print(mij); System.out.print(t); System.out.println(); /*编程实现魔方阵。魔方阵是指方阵的每一行、每一列和对角线之和均相等。*/ class Magic private int n; private int I; private int J; public Magic(int n) this.n = n; public int getMagic() int M=null; if(n=2)return M; if(n%2=1) meshGrid(); M=new intnn; for(int i=0;in;i+) for(int j=0;jn;j+) int a=mod(Iij+Jij-(n+3)/2,n); int b=mod(Iij+2*Jij-2,n); Mij=n*a+b+1; else if(n%4=0) meshGrid(); M=reshape(); for(int i=0;in;i+) for(int j=0;jn;j+) int a=(int)Math.floor(mod(Iij,4)/2.0); int b=(int)Math.floor(mod(Jij,4)/2.0); if(a=b) Mij=n*n+1-Mij; Else int p=n/2; Magic magic=new Magic(p); int temp=magic.getMagic(); M=new intnn; for(int i=0;ip;i+) for(int j=0;jp;j+) Mij=tempij; Mij+p=tempij+2*p*p; Mi+pj=tempij+3*p*p; Mi+pj+p=tempij+p*p; int k=(n-2)/4; for(int j=0;jk;j+) for(int i=0;ip;i+) int t=Mij; Mij=Mi+pj; Mi+pj=t; for(int j=n-k+1;jn;j+) for(int i=0;i2) I=new intnn; J=new intnn; for(int i=0;in;i+) for(int j=0;j2) int M=new intnn; for(int i=0;in;i+) for(int j=0;jn;j+ Mij=i*n+j+1; return M; return null; private int mod(int a,int n) int m=a%n; if(m0) m+=n; return m; public void printMagic() this.getMagic(); int a=this.getMagic(); for(int i=0;ia.length;i+) for(int j=0;j 0) r = m % n;m = n;n = r;return m;4、 实验结果1、 reserve(12345)=543212、 i=3 m(i)=52/153、 m=16 n=20 r=4Java 语言实验四1、 实验目的 1、掌握Java 基本语法,重点是面向对象的思想和语法。2、掌握继承、多态的概念与实现方法。3、掌握构造函数的概念和使用。2、 实验题目1、编写一个类计算箱子的体积,要求如下:1)类中有三个属性,长度,高度和宽度;2)类中的每个属性提供相应的set/get方法;3)要有一个无参构造方法;4)要有一个构造方法初始化三个属性;5)要有一个方法计算箱子的体积;6)定义一个dispInfo方法,显示类的信息。测试之。2、编写一个Point类,要求如下:1)类中有两个属性,x,y;2)类中的每个属性提供相应的set/get方法;3)要有一个无参构造方法;4)要有一个构造方法初始化两个属性;5)要有一个方法distance(Point p1,Point p2)计算两者直接的距离;6)定义一个dispInfo方法,显示类的信息。测试之。3、 实验程序1、编写一个类计算箱子的体积package Test;public class MyTest04 public static void main(String args) jstj s=new jstj(50,55,89); s.calcult(); System.out.println( s.displnfo();/*1、编写一个类计算箱子的体积。*/class jstj private double length;private double width;private double height; public double getLength() return length; public void setLength(double length) this.length = length;public double getWidth() return width;public void setWidth(double width) this.width = width;public double getHeight() return height;public void setHeight(double height) this.height = height;jstj(double length, double width, double height) super(); this.length = length; this.width = width; this.height = height;jstj() super();public String displnfo() return jstj length= + length + , width= + width + , height=+ height + ;public void calcult() double sum=length*width*height; System.out.println(体积为:+sum);2、 编写一个Point类package Test;public class MyTest0402 /* * param args */public static void main(String args) Point p1=new Point(3.0,4.0);Point p2=new Point(3.0,3.0);System.out.println(p1.distance(p1, p2);System.out.println(p1.dispInfo();/*、编写一个Point类,要求如下:1)类中有两个属性,x,y;2)类中的每个属性提供相应的set/get方法;3)要有一个无参构造方法;4)要有一个构造方法初始化两个属
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省秦皇岛市青龙满族自治县第一中学2025-2026学年高二上学期9月月考数学试题(原卷版)
- 黑龙江省哈尔滨第三中学2025-2026学年高二上学期9月月考化学试题
- 2026届湖南长沙市广益实验中学英语九年级第一学期期末教学质量检测试题含解析
- 2026届重庆市重点中学英语九上期末复习检测试题含解析
- 2026届贵州省黔东南州剑河县九年级化学第一学期期末联考模拟试题含解析
- 2026届孝感市重点中学化学九上期末质量跟踪监视试题含解析
- 2026届辽宁省营口中学化学九年级第一学期期末学业质量监测模拟试题含解析
- 2026届山西省运城市夏县英语九上期末统考模拟试题含解析
- 2026届广东省湛江市霞山职业高级中学九上化学期中学业水平测试模拟试题含解析
- 2026届哈尔滨香坊区四校联考九年级化学第一学期期中教学质量检测试题含解析
- 小学生防骗防诈安全教育课件
- 冀教版七年级数学上册《1.7有理数的加减混合运算》同步练习题及答案
- 中外广告史(第三版) 课件全套 何玉杰 第0-11章 绪论、中国古代广告的发展- 日本广告的发展
- 三年级全一册《劳动与技术》第二单元 活动3《创意剪纸》课件
- 肺结节科普宣教
- 义务教育信息科技课程标准(2022年版)解读
- 空调维保项目进度保障计划
- 放射科室风险评估报告
- 各类组织架构图课件
- 创伤性窒息护理课件
- 人口老龄化对寿险产品需求结构的影响
评论
0/150
提交评论