第一次实验报告&学习总结

实验报告一&学习总结

一、实验目的

熟悉JDK开发环境

熟练掌握结构化程序设计方法

二、实验内容

  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 FindDaffodilNumber{
    public static void main(String[] args){
        int a,b,c,i;
        for(i=100;i<=999;i++){
            a=i/100;
            b=(i%100)/10;
            c=i%100%10;
            if(i==a*a*a+b*b*b+c*c*c){
            System.out.println(+i"水仙花数");
                        }
                    }
                 }
}

实验结果:

 第一次实验报告&学习总结_第1张图片

 

 

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

实验源码:

public class zuoye1{
    public static void main(String[] args){
        int i,k=1,sum=0;
                                 for(i=3;i<=993;i++){
                        i=i+9;
            sum=sum+i*k;
            k=-1*k;
        }
           System.out.print("sum="+sum); 
          }
}
 

 

实验结果:

 第一次实验报告&学习总结_第2张图片

 

 

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

实验源码:

package Frist;

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


    }


}

实验结果:

第一次实验报告&学习总结_第3张图片

 

 

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

实验源码:

package Frist;

public class and {

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

实验结果:

第一次实验报告&学习总结_第4张图片

 

 

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

实验源码:

package Frist;

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

}

实验结果:

第一次实验报告&学习总结_第5张图片

 

 

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

实验源码:

package Frist;

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

}

实验结果:

第一次实验报告&学习总结_第6张图片

 

 

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

实验源码:

package Frist;

public class photo {

    public static void main(String[] args) {
        for (int i=1;i<=5;i++){
            for (int x=1;x<=5-i;x++){
                System.out.print(" ");
            }
            for (int y=1;y<=i;y++){
                System.out.print("*");
                   for (int z=1;z<=i-1;z++){    
                   }
                   System.out.print(" ");
            }
                System.out.println();
        }

    }

}

 

实验结果:

第一次实验报告&学习总结_第7张图片

 

        本周在老师的讲述下详细的了解string类、this关键词、static关键字的常用方法及其相关应用;还详细的介绍了构造方法、匿名对象、类设计分析的相关知识。

         这几个题目还是比较容易的,毕竟以前C语言就做过这些题,但还是出现了一点点问题,在做第4题时我最开始sum是用int定义的,但是sum的结果比int的范围要大,所以在输出时出来的结果不对,问了黄诺诚才看出来问题所在。所以在考虑问题是还是要细心啊。

你可能感兴趣的:(第一次实验报告&学习总结)