一、实验报告
1. 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
实验代码
public class Shui { 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的值。
public class qiu { public static void main(String[] args) { int i,j=1; int x=0,y=0; for(i=13;i<=1003;i=i+10) { y=j*i; x=x+y; j=-j; } System.out.println(x); } }
实验结果
3. 编程求1!+2!+3!+…+20!
实验代码
public class jie { public static void main(String[] args) { int i; long j=1,sum=0; for(i=1;i<=20;i++) { j*=i; sum+=j; } System.out.println(sum); } }
实验结果
4. 编写Java程序,计算8+88+888+…前10项之和
实验代码
public he { public static void main(String[] args) { long sum=0,n=8; for(int i=0;i<=10;i++) { sum=sum+n; n=(n*10)+8; } System.out.println(sum); } }
实验结果
5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
实验代码
public class wan { public static void main(String[] args) { int i, j, sum; for(i=0;i<=1000;i++){ if(i==1) continue; sum=1; for(j=2;j<i;j++) if(i%j==0) sum+=j; if(sum == i){ System.out.println(i); } } } }
实验结果
6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数
实验代码
public class zheng { public static void main(String[] args) { int i,sum=0; for(i=1;sum+i<8888;i++) { sum=sum+i; } System.out.println(sum); System.out.println(i-1); } }
实验结果
7. 使用for循环打印下面的图形
实验代码
public class san { public static void main(String[] args) { int i,j; for(i=1;i<=5;i++) { for(j=5-i;j>=0;j--) { System.out.print(" "); } for(j=1;j<=i;j++) { System.out.print("* "); } System.out.println(); } } }
实验结果
二、学习总结
这周学习了java的两个关键词:this、static;构造方法的私有化;学习了this的使用,如:使用this调用本类中的属性、使用this调用构造方法、this表是当前对象;且学习了static的使用;