码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-09-10 17:50:08      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:int   实验   sys   java程序   main   个数   数字   max   打印   

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

实验代码:

public class Main{
           public static void main(String[] args){
           int a,b,c,i;
           for(i=100;i<1000;i++){
               a=i/100;
               b=i%100/10;
               c=i%10;
               if(Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3)==i){
               System.out.println(i+"是一个“水仙花数“");
    }
         }
    }
}

技术图片

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

实验代码:

public class Main{
           public static void main(String[] args){
    int i,num=0,k,l=1;
    for(i=1;i<=100;i++){
    k=10*i+3;
    num=num+k*l;
    l=-1*l;
        }
    System.out.println(+num);   
    }
      }

技术图片

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

实验代码:

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

技术图片

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

实验代码:

public class Main{
           public static void main(String[] args){
    int i,k,num=0;
                for(i=1;i<=10;i++){
    for(k=0;k<i;k++){
    num+=Math.pow(10,k)*8;
    }
    }
                System.out.println(num);
    }
      }

技术图片

  1. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
    实验代码:
public class Main {
    public static void main(String[] args) {
        int i, n, max;
        for (i = 2; i <= 1000; i++) {
            max = 0;
            for (n = 1; n <= i/2; n++) {
                if (i % n == 0)
                    max += n;
            }
            if (max == i) {
                System.out.println(i);
            }
        }
    }
}

技术图片
错误:当第二个for循环条件为n<=i时;实验无法输出结果。
解决:考虑后发现 基本没有因子能大于这个数的二分之一,将其改为n<=i/2.

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

实验代码:

public class Main{
           public static void main(String[] args){
    int i,max=0,num=0;
    for(i=1;i<8888;i++){
    max+=i;
    if(max>8888){
    max=num;
    break;
}
    else{
    num=max;
}   
    }
    System.out.println(max);
    }
      }

技术图片

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

实验代码:

public class Main {
    public static void main(String[] args) {
        int i, n, h = 1, k;
        for (i = 4; i >= 0; i--) {
            for (n = 0; n < i; n++) {
                System.out.print(" ");
            }
            for (k = 1; k <= h; k++) {
                System.out.print("* ");
            }
            h++;
            System.out.print("\n");
        }
    }
}

技术图片
问题:最开始输出自动换行,导致图像不正确。
解决:System.out.println(" ");是自动换行输出,System.out.print(" ");是不自动换行输出。

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

标签:int   实验   sys   java程序   main   个数   数字   max   打印   

原文地址:https://www.cnblogs.com/hhl296738954/p/11498456.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!