A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 744919632 中级黑马   /  2015-12-15 20:32  /  465 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

【程序9】
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
  
public class  Prog9{
  
    public static void main(String[] args){
  
        int n = 10000;
  
        compNumber(n);
  
    }
  
    //求完数
  
    private static void compNumber(int n){
  
        int count = 0;
  
        System.out.println(n+"以内的完数:");
  
        for(int i=1;i<n+1;i++){
  
            int sum = 0;
  
            for(int j=1;j<i/2+1;j++){
  
                if((i%j)==0){
  
                    sum += j;
  
                    if(sum==i){
  
                  System.out.print(i+" ");
  
                  if((count++)%5==0)
  
                    System.out.println();
  
                 }
  
                }
  
            }
  
        }
  
    }
  
}
  
【程序10】
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
  
import  java.util.Scanner;
  
public class  Prog10{
  
    public static void main(String[] args){
  
        System.out.print("请输入小球落地时的高度和求解的次数:");
  
        Scanner scan = new  Scanner(System.in).useDelimiter("\\s");
  
        int h = scan.nextInt();
  
        int n = scan.nextInt();
  
        scan.close();
  
        distance(h,n);
  
    }
  
    //小球从h高度落下,经n次反弹后经过的距离和反弹的高度
  
    private static void distance(int h,int n){
  
        double length = 0;
  
        for(int i=0;i<n;i++){
  
            length += h;
  
            h /=2.0 ;
  
        }
  
        System.out.println("经过第"+n+"次反弹后,小球共经过"+length+"米,"+"第"+n+"次反弹高度为"+h+"米");
  
    }
  
}
  

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马