public class DaffodilArray {
 public static void main(String[] args) {

//(1)水仙花数 1---10000
 int temp=0;
 for(int i=1;i<=10000;i++){
  temp=i;
  int x=temp/1000;
  int y=temp%1000/100;
  int z=temp/10%10;
  int w=temp%1000%100%10;
  
  if (temp==x*x*x+y*y*y+z*z*z+w*w*w) {
   System.out.println(i);
  }
 } 

//(2)求1-1000之间可以被3,5,7整除是数字
  int temp=0;
  for(int i=1;i<=1000;i++){
   temp=i;
   if(temp%3==0&&temp%5==0&&temp%7==0){
    System.out.println(i);
   }
  }
 
//(3)求1--20的阶乘.
 int num=1;
 int sum=0;
 for(int i=1;i<=20;i++){
  num=num*i;
  sum=sum+num;
  
 }
 System.out.println(sum);
  
//(4)求三个数中的最大值
  int a=98;
  int b=21;
  int c=45;
  if(a<b){
   b=a;
  }
  if(a<c){
   c=a;
  }
  System.out.println(a);
  
//(5)1---100之和
  int sum1=0;
  for(int i=1;i<=100;i++){
   sum1=sum1+i;
  }
  System.out.println(sum1);

//(6)两个数字调换位置
  int a=4;
  int b=6;
  a^=b;
  b^=a;
  a^=b; 
  System.out.println(a);
  System.out.println(b);
  

//(7)编写java程序,求13-23+33-43+53-.....+993-1003的值?
  int sumone=0;
  for(int i=1;i<=100;i++){
   if(i%2==0){
    sumone=sumone-i*10+3;
   }else{  
    sumone=sumone+i*10+3;
   }
  }
  System.out.println(sumone);
  
  
//(8)打印等腰三角形 
  for(int i=5;i>=1;i--){
   for(int j=1;j<=5-i;j++){
    System.out.print(" ");
   }
   for(int k=1;k<=2*i-1;k++){
    System.out.print("*");
   }
   System.out.println();
  }
 }

 
//两数字的调换,此种调换是防止未了溢出
 public void swap(int a,int b) {
   if ((a > 0 && b > 0) || (a < 0 && b < 0)){   //同号  
      a = a - b;
      b = a + b;
      a = b - a;
      }
      else {   //异号
      a = a + b;
      b = a - b;
      a = a - b;
      }
 }
 public void swap0(int a,int b){ 
   a = a ^ b;
      b = b ^ a;
      a = a ^ b;
 }
}