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

实验报告一

一、实验目的

(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是一个“水仙花数”。

实验源码:

public class Flower{
           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 work2{
          public static void main(String[] args) {

          int sum=0,flag=1,i;
          for(i=13;i<=1003;i=i+10){
          sum+=flag*i;
          flag=-flag;
          }
         System.out.print(sum);
         }
}

实验结果:

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

实验源码:

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

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

实验源码:

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

实验结果:

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

实验源码:

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

实验结果:

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

实验源码:

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

实验结果:

7. 使用for循环打印下面的图形。

实验源码:

public class work7{
          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.print(" ");
             }

}

}

总结:总体来说都还比较简单,有时一些小错误自己也能及时发现。

课程总结:

这周的课程学到了很多,有封装性,构造方法,匿名对象,static的作用以及使用方法,还有this的一些关键属性。老师讲的不错,不过光上课听还是似懂非懂的样子,所以还是要配合自己课后自学,看看书查查百度什么的,才能更好的理解。加油,希望自己的编程水平可以一点点进步吧。

原文地址:https://www.cnblogs.com/lyp82ndl/p/11524863.html