实验内容:

1.判断水仙花数:


class NarcissisticNumber{								//判断水仙花数
	public static void main(String agrs[]){
		int N;
		int i,j,k;
		for(N=100; N<999;N++){
			i=N/100;
			j=N/10-i*10;
			k=N-100*i-10*j; 			//分别找出个,十,百位
			
			if(i*i*i+j*j*j+k*k*k == N){          //进行判断
			System.out.println(N);       		//输出结果
			}
		}
	}
}

运行截图:

感想:这个题目思路比较简单。而且在上学期也用c语言做过一次,所以做起来也没有遇到什么困难,因为涉及到java知识还是比较少的,只有输出和开头有所涉及。

2.求13-23+33-43+…+973-983+993-1003的值


class Summation{					//求13-23+33-43....-1003
	public static void main(String agrs[]){
		int i;
		int Sum=0;
		
		for(i=1; i<101; i++){
			if(i%2==0){				//判断符号
				Sum-=i*10+3;
			}
			else{
				Sum+=i*10+3;
			}
		}
		System.out.println(Sum);			//输出结果
	}
}

运行截图:

感想:这个题目虽然是一个简单的求和问题,但是也java写比c语言写,要快很多,而且容易理解,不得不说,每一种语言都有自己独特的色彩。

3.求1!+2!+3!+…+20!


class Factorial{				//求1!+2!+3!+…+20!
	public static void main(String agrs[]){
		int N=0;
		int n=0;
		int Sum=0;
		
		for(N=1;N<=20;N++){
			int Temp=1;
			for(n=1;n<=N;n++){
				Temp*=n;
			}
			Sum+=Temp;
		}
		System.out.println(Sum);
	}
}
			
	

运行截图:

感想:在第一次写的时候,没有注意变量的初始化,导致运行错误。。。老毛病了,总是不注意一些细节,以后要注意。

4. 编写Java程序,计算8+88+888+…前10项之和。


class SueForPease{							//计算8+88+888+…前10项之和
	public static void main(String agrs[]){
		long  Sum=0;
		long  Temp=0;
		for(int n=1;n<=10;n++){
			Temp=Temp*10+8;
			Sum+=Temp;
		}
		System.out.println(Sum);
	}
}

运行截图:

感想:这个题目,有点简单,没有什么特别的感想。。。

5.一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有。


class FindTheNumber{							//找完数
	public static void main(String agrs[]){
		for(int n=1; n<=1000; n++){
			int Sum=0;
			for(int i=1;i<n;i++){
				if(n%i==0){
					Sum+=i;
				}
			}
				if(Sum==n)
					System.out.println(" "+n);	
		}
	}
}
				

运行截图:

感想:一开始没有明白完数这个概念,所以用了一些时间去查了一下,代码写出来了以后,在想思考,一定要循环1000次才能找出来嘛,如果不循环1000次,那应该没注意简化呢?

6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。


class LargestPositiveInteger{             //求1+2+3+....+n<8888;
	public static void main(String agrs[]){
		int Sum=0;
		int i=0;
		for(i=0; i<200; i++){             
			Sum+=i;							//循环求和
			if(Sum>8888)					//判断
				break;						//停止循环
		}
		System.out.println(i);				//输出最大n
	}
}

运行截图:

感想:唯一感想就是break在java里面也可以用,太好啦。

7.使用for循环打印下面的图(等腰三角形)

public class PrintTriabgle{               //打印等腰三角形           
	public static void main(String agrs[]){
		int Max=5;
		for(int i=1; i<=Max;i++){
			for(int j=0;j<Max-i;j++){
				System.out.print(" ");
			}
			for(int n=1;n<=i;n++){
				System.out.print("* ");
			}
			System.out.println();
		}
	}
}

运行截图:

感想:类似于打印金字塔,比较简单。。

第三周课程总结:这一个礼拜主要学习到了static,main方法,this,封装性,关于this主要有4个用途:1、this调用当前属性 2.this调用方法(普通方法、构造方法)3、this表示当前方法4.this表示强调当前属性。this的用途非常多,需要不断的在实际的操作中去不断的理解,挖掘,这是一个非常主要的关键词,我要把它学好,现在的学习进度比较快,需要自己去不断的进行练习,通过练习提高自己对概念的理解,让自己变的更加强大。