java习题练习

java习题练习_第1张图片
4
package day20180313;

public class Zylt {

    public static void main(String[] args) {
        
       System.out.println("第一次:"+high(100,1));
       System.out.println("第2次:"+high(100,2));
       System.out.println("第3次:"+high(100,3));
       System.out.println("第10次:"+high(100,10));    
    }
    
    static double high(double height,int n)
    {
        double sum=height;
        
        for(int i=0; i
第一次:100.0
第2次:200.0
第3次:250.0
第10次:299.609375
java习题练习_第2张图片
5
package day20180313;

public class ForNum {

    public static void main(String[] args) {
        
        System.out.println("(2,1)="+addNum(2,1));
        System.out.println("(2,2)="+addNum(2,2));
        System.out.println("(2,3)="+addNum(2,3));
        System.out.println("(2,5)="+addNum(2,5));               
    }

    
    static long addNum(int a, int n)
    {
        long sum=0; 
            
        for(int i=1; i
(2,1)=2
(2,2)=24
(2,3)=246
(2,5)=24690

求解一道算法题,我做了一半,大佬来试一下。

java习题练习_第3张图片
7
package day20180313;

public class Fact {
    
    final static int max=100;
    final static int Maxnum=1000000000;
    public static void main(String[] args) {
    
    
        
        long[] a=retarr(7);
        
        
          for(int i =(int) a[0] ;i>0;i--)//倒序输出每一位   
          {
                System.out.print("---------"+a[i]);
          }
          
          System.out.println("+++++++++++++");
            addarr(11);
         
    }
    
    
static void addarr(long n)
{
    
 long[] sum=new long[max];
 
 //赋值为0
 for(int k =max-1;k>0;k--)//
 {
     sum[k]=0;
 }
 
 long i;
 
 for(i=2; i<=n; i++)
 {
     
     long[] b=retarr(i);
     
      long num=0;
     for(int j=1; j10)
       {
           num=sum[j]/10;      
       }
       
      
     }
     

 }
 
 int ma=0;
    
 for(int k =max-1 ;k>0;)//倒序输出每一位   
 {
    
     if(sum[k]==0)
     {
         k--;
     }else
     {
         ma=k;
         break;
     }
  
 }
 
 System.out.print(":ma===="+ma);
 
 
 
 for(int k =ma ;k>0;k--)//倒序输出每一位   
 {
   System.out.println("结果是:"+sum[k]);
     
 }
 
 
    
    
}
    
    
    
    
//变成数组。 
    
static long[] retarr(long k)    
{
    long[] a =new long[max];
    
    long temp=0;
    int digit=1;
    long number=0;
        for(int j=1; j0;i--)//倒序输出每一位   
            System.out.print(a[i]);
      System.out.println();
    
    return a;
    
    
}
    
    
    
    //求质数的算法
    
    static long fac(long i2)
    { 
        int i=2;
        int k=(int) Math.sqrt(i2);
        if(i2==2)
            return 2;
        for( i=2; i<=k; i++)
        {
            if(i2%i==0)
            {
                break;  
            }
            
        }
        if(i>k)
        return i2;
        return 0;
    }
    
    
}

你可能感兴趣的:(java习题练习)