【Java2 实用教程 (第5版) 】第三章,课后编程题答案。(初学者必备!!!!!)

点击

↓↓↓↓↓↓↓↓↓

代码编写过程的视频(可点击查看)



(1) 求 1!+ 2!+……+10! 。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    public static void main(String[] args) {
    
    

       long sum=0;int t=1;

        for (int i = 1; i <=10; i++) {
    
    
            t*=i;
            sum+=t;
        }
        System.out.println("1!+ 2!+……+10! ="+sum);
      }
}

(2)求 100以内的全部素数。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    final static int N =110;
    static boolean [] st = new boolean [N];

    static  void get_prime(){
    
    
        for (int i = 2; i <=100 ; i++) {
    
    
            if(!st[i]){
    
    
                System.out.print(i+" ");
                for (int j = i; j <=100 ; j+=i) {
    
    
                    st[j]=true;
                }

            }
        }
    }

    public static void main(String[] args) {
    
    
         get_prime();
      }
}

(3)分别用do-while 和 for 计算 1+1/2!+1/3!+……的前20项和。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    public static void main(String[] args) {
    
    
        double sum =0,t=1;
        for (int i = 1; i <=20; i++) {
    
    
            t*=(1.0/i);
            sum+=t;
        }
        System.out.println(sum);
          //-------------------------
        double sums =0,tt=1;
        int x=1;
        do {
    
    
            tt*=(1.0/x);
            sums+=tt;
            x++;
        }while (x<=20);
        System.out.println(sums);
      }
}

(4)求 1000 之内的所有完数。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    public static void main(String[] args) {
    
    
        for (int i = 0; i <=1000 ; i++) {
    
    
            int res=0;
            for (int j = 1; j < i; j++)
                if(i%j==0) res+=j;

             if (i==res) System.out.print(res+" ");

        }
      }
}

(5)求8+88+888+……+前10项和。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    public static void main(String[] args) {
    
    

        int x = 8;
        long sum = 0;
        for (int i = 1; i <10 ; i++) {
    
    
            sum+=x;
            x+=(x*10); // x = x + x*10;
        }

        System.out.println(sum);

      }
}

(6)输出满足1+2+3+……+n < 8888 的最大整数。

package 帅小柏;

public class 点波关注呦不迷路 {
    
    

    public static void main(String[] args) {
    
    
        int res=1;
        int sum=0;
        while (sum<888) sum+=res++;

        System.out.println(res);
      }
}

猜你喜欢

转载自blog.csdn.net/weixin_46339668/article/details/114899202
今日推荐