第三次java作业

来源:互联网 发布:苏州优才通网络怎么样 编辑:程序博客网 时间:2024/06/08 12:36

1.编写程序1!+2!+....10

[java] view plain copy
  1.  public class text2{  
  2.  public static void main(String[] args)    
  3.     {   
  4.         long temp=1l;   
  5.         long sum=0l;   
  6.         for (int i=1;i<11 ;i++ )   
  7.         {   
  8.             temp=temp*i;   
  9.             sum=sum+temp;   
  10.         }   
  11.         System.out.println("1!+2!+3!+...+10!="+sum);   
  12.     }   }   




2.编写程序求100之类素数

  1. public class text{    
  2.     public static void main(String[] args){    
  3.         int n=0;    
  4.         for(int i=2;i<=100;i++)    
  5.         {    
  6.             if(Prime(i))    
  7.             {    
  8.                 n++;    
  9.                 System.out.print(i+"\t");    
  10.                 if(n%5==0)    
  11.                     System.out.println();    
  12.             }    
  13.         }       
  14.     }    
  15.         //判断是否是素数    
  16.         static boolean Prime(int number)    
  17.     {    
  18.         for(int i=2;i<=Math.sqrt(number);i++)    
  19.         {    
  20.             if(number%i==0)    
  21.                  return false;    
  22.         }    
  23.         return true;        
  24.     }    



3.分别用do-while和for循环计算1+1/2!+1/3!+1/4!+……的前20项和

  1. public class text{  
  2. public static void main(String args[]) {  
  3.  double sum=0,a=1,i=1;   
  4.   do { sum=sum+a;  
  5.   i++;  
  6.   a=(1.0/i)*a;  
  7.   }  
  8.   while(i<=20);  
  9.    System.out.println("使用do-while循环计算的sum="+sum);  
  10.     for(sum=0,i=1,a=1;i<=20;i++) {  
  11.         a=a*(1.0/i);  
  12.         sum=sum+a;  
  13.     }  
  14.      System.out.println("使用for循环计算的sum="+sum);  
  15.     }  
  16. }  


4.一个数如果恰好等于它的因子之和,这个数就称为完数。编写应用程序求1000之内的所有完数

  1. public class text{  
  2.    public static void main(String args[]) {  
  3.     int sum=0,i,j;   
  4.      for(i=1;i<=1000;i++) {  
  5.      for(j=1,sum=0;j<i;j++) {   
  6.       if(i%j==0)   
  7.       sum=sum+j;  
  8.      }  
  9.      if(sum==i)  
  10.      System.out.println("完数:"+i);  
  11.       }  
  12.     }  
  13.  }  


5.编写应用程序,使用for循环语句计算8+88+888+……前10项之和


  1. public class text{  
  2.  public static void main(String args[]) {   
  3.  int m=8,item=m,i=1;  
  4.  long sum=0;  
  5.  for (i=1,sum=0,item=m;i<=10;i++) {   
  6.  sum=sum+item;  
  7.  item=item*10+m;  
  8.  }  
  9.   System.out.println(sum);  
  10.    }  
  11. }  


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

[java] view plain copy
  1. public class text{  
  2.  public static void main(String args[]) {   
  3.  int n=1;  
  4.  long sum=0;  
  5.  while(true){  
  6.      sum=sum+n;  
  7.      n++;  
  8.      if(sum>=8888)  
  9.          break;  
  10.  }  
  11.  System.out.println("满足条件的最大正整数:"+(n-1));  
  12.     }  
  13. }  

原创粉丝点击