第三周课程总结&实验报告一

一、实验报告

1)打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。

I、实验代码

public class text {
     public static void main(String args[]) {
         int x,y,z;
         for(int i=0;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);
             }
         }
     }
}

II、运行结果截图

2)编写Java程序,求13-23+33-43+…+973-983+993-1003的值。

I、实验代码

public class text {
     public static void main(String args[]) {
         int flag=-1,sum=0;
         for(int i=13;i<=1003;i=i+10) {
             flag=flag*(-1);
             sum+=flag*i;
         }
                 System.out.println(sum);
                    
          }
}

II、运行结果截图

3)编程求1!+2!+3!+…+20!。

I、实验代码

public class text {
     public static void main(String args[]) {
         long  flag=1,sum=0;
         for(int i=1;i<=20;i++) {
             flag=flag*(i);
             sum+=flag;
         }
                 System.out.println(sum);
                    
          }
}

II、运行结果截图

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

I、实验代码

public class text {
     public static void main(String args[]) {
         long  flag=0,sum=0;
         for(int i=1;i<=10;i++) {
             flag=flag*10+8;
             sum+=flag;
         }
                 System.out.println(sum);
                    
          }
}

II、运行结果截图

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

I、实验代码

public class text {
     public static void main(String args[]) 
     {
         
         for(int i=2;i<=1000;i++) 
         {
             int  flag=0;
                for(int j=1; j<=i/2; j++) 
                {
                  if(i % j == 0) 
                  {
                      flag=flag+j;
                  }
                 }
                    if(flag == i) 
                    {
                         System.out.println(i);
                    }
         }
     }
}

II、运行结果截图

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

I、实验代码

public class text {
     public static void main(String args[]) 
     {
         int  i=0,sum=0;
         
         while(sum < 8888) 
         {
               i++;
               sum+=i;
         }
                         System.out.println(i-1);
                    
         
     }
}

II、运行结果截图

小结:这个题目在输出的时候没想清楚,得到的答案是133,看了一下别人的代码才明白

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

I、实验代码

public class text 
{
     public static void main(String args[]) 
     {
        for(int i=1;i<=5;i++)
        {
            for(int j=5-i;j>=0;j--) 
            {
                System.out.print(" ");
            }
            for(int j=1;j<=i;j++) 
            {
                System.out.print("* ");
            }
        System.out.println(); 
        }
     }
}

II、运行结果截图

总结:虽然这一次的题目并不是特别难,但是我总是出错在一些小细节上,感觉自己学的还是不够,以后要更加努力。

二、课程总结

1)this的用法

I、表示类中的属性

II、调用本类的构造方法

III、表示当前对象

2)static的用法

I、设置静态变量

II、设置静态方法

注:static方法不能调用非static的方法或属性,且不能与this同时使用)

原文地址:https://www.cnblogs.com/wangweihanqq2001/p/11519126.html