Java实验报告

Posted lmcmha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java实验报告相关的知识,希望对你有一定的参考价值。

Java实验报告(一)

实验过程

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

实验源码:



import java.lang.Math;
class Narcissus
    public static void main(String[] args)
        int num1,num2,num3;
            int count = 0;
            for(int i = 100;i < 1000;i++)
                num1 = i / 100;
                num2 = (i % 100) / 10;
                num3 = i % 10;
                if(Math.pow(num1,3)+Math.pow(num2,3)+Math.pow(num3,3) == i)
                    count = 1;
                    System.out.println(i+"是水仙花数");          
                
            
            if(count == 0)
                System.out.print("No");
            
            System.out.println();
        
    

实验结果:
技术图片

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

实验源码:


class Staggered
    public static void main(String[] args)
        int num = 13;
        int flag = 1;
        int sum = 0;
        for(int i = 0;i <= 99;i++)
            sum += flag * num;
            flag = -flag;
            num += 10;
        
        System.out.println(sum);
        
        
    


实验结果:
技术图片

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

实验源码:



class Factorial
    public static void main(String[] args) 
        long result = 0;
        for(int i = 1;i <= 20;i++)
            long product = 1;
            for(int j = 1;j <= i;j++)
                product *= j;
                
            
            result += product;
        
        System.out.println("1!+2!+3!+…+20! = "+result);
    

实验结果:
技术图片

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

实验源码:



class Summation
    public static void main(String[] args)

        String num = "";
        long sum = 0;
        for(int i = 1;i <= 10;i++)//求前N项的和
            num +='8';
            sum += Long.parseLong(num);
        
        System.out.println(sum);
    

实验结果:
技术图片

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

实验源码:


class Perfect
    public static void main(String[] args)
        
        for(int i = 1;i < 1000;i++)
                        if(i == 1)
                            continue;
                        
            int sum = 1;
            for(int j = 2;j < i;j++)
                if(i % j == 0)
                    sum += j;
                
            
            if(sum == i)
                System.out.println(i + "是一个完数");                
            
            
        
       

实验结果:
技术图片

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

实验源码:


class Simple
    public static void main(String[] args)
        int sum = 0;
        int i = 1;
        while(sum < 8888)
            sum += i;
            i++;
        
        System.out.println("满足1+2+3+…+n<8888的最大正整数为"+i);
    

实验结果:
技术图片

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

技术图片

实验源码:


import java.util.Scanner;

class Triangle 
    public static void main(String[] args) 
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();// 三角形的层数
        String op = sc.next();// 三角形的符号
        for (int i = 1; i <= N; i++) 
            int k = 1;
            for (int j = 1; j <= 2 * N; j++) 
                if (j == N - i + k) 
                    System.out.print(op);
                    k++;
                
                if (j == N) 
                    System.out.println();
                    break;
                 else 
                    System.out.print(" ");
                
            
        
    

实验结果:
技术图片

总结:

题目较为基础,比较简单

以上是关于Java实验报告的主要内容,如果未能解决你的问题,请参考以下文章

20175325 《JAVA程序设计》实验二《JAVA开发环境的熟悉》实验报告

java实验报告总结

java第三次实验报告

20165227 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

20165230 《Java程序设计》实验二(Java开发环境的熟悉)实验报告

20145207 实验二《Java面向对象程序设计》实验报告