第三周课程总结&试验报告(一)
Java实验报告
班级: 计科二班 学号: 20188435 姓名:徐鸿敏
完成时间9.13
评分等级
实验一 Java开发环境与简单Java程序
一.实验目的
(1) 熟悉JDK开发环境
(2) 熟练掌握结构化程序设计方法
二.实验内容
1. 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
3. 编程求1!+2!+3!+…+20!。
4. 编写Java程序,计算8+88+888+…前10项之和。
5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
7. 使用for循环打印下面的图形。
三.实验过程
1.打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
class Main{ public static void main(String[] args) { int x,y,z; for(int i=100;i<=999;i++){ x=i/100; y=(i%100)/10; z=i%10; if(Math.pow(x,3)+Math.pow(y,3)+Math.pow(z,3)==i){ System.out.println(i); } } } }
2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
class Main { public static void main(String[] args) { int i,sum=0,flag=1; for(i=13;i<=1003;i=i+10){ sum+=i*flag; flag=-flag; } System.out.println(sum); } }
3. 编程求1!+2!+3!+…+20!。
class Main{ public static void main(String[] args) { long i,j,sum1=1,sum2=0; for(i=1;i<=20;i++){ for(j=1;j<=i;j++){ sum1*=j; } sum2+=sum1; sum1=1; } System.out.println(sum2); } }
4. 编写Java程序,计算8+88+888+…前10项之和。
class Main{ public static void main(String[] args) { long i=0,j,sum=0; for(j=1;j<=10;j++){ i=i*10+8; sum+=i; } System.out.println(sum); } }
5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
class Main{ public static void main(String[] args) { int i,x,y,sum=0; for(i=1;i<=1000;i++){ for(x=2;x<i;x++){ for(y=x+1;y<i;y++){ if(x*y==i){ if(x==y){ sum+=x; } else{ sum+=x+y; } } } } if(i==1+sum){ System.out.println(i); } sum=0; } } }
6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
class Main{ public static void main(String[] args) { int n=1,sum=1; while(sum<8888) { n++; sum += n; } System.out.println(n); } }
7. 使用for循环打印下面的图(等腰三角形)
class Main { public static void main(String[] args) { int i,j=5,k,z; for(i=1;i<=j;i++){ for(k=1;k<=j+1-i;k++){ System.out.print(" "); } for(z=1;z<=i;z++){ System.out.print("* "); } System.out.print("\n"); } } }
总结:
这是第一次使用java进行实验报告,主要目的是熟悉jdk得编译,相比较c而言,初试java的难度要大得多,有些简单明了的题目,用java写感觉很不理解。但是熟练之后就很流畅的完成了实验报告的作业