我们要学会举一反三,一下我写的几个小程序

求数列:1,1,2,3,5,8.......第40个的数值。数列f(1)=1,f(2)=2;f(n)=f(n-1)+f(n-2);

  方法一 递归法:

      public class Test1  {
        public static void main(String[] args)  {
           System.out.println(f(40));
       }
        public static int f(int n)  {
          if (n == 1||n ==2)  {
           return 1;
         }  else {
           return f(n - 1)+f(n - 2);
        }
 }

  方法二循环:

 public class Test2  {
   public static void main(String[] args)  {
   System.out.println(f(40));
  }
  public static long f(int n)  

     if(n < 1)  {

       System.out.println("error")

   }
     if(n == 1||n ==2 )  {
       return 1;
    }  
      long  f1 = 1l;

      long f2 = 1l;

      long f = 0l;

     for(int i = 1;i < n-2;i++)  {

       f =f1  + f2;

       f1 = f2;

       f2 = f;

     }

             return  f;

    }

 }


 输出  1--100内前五个可以被6整除的数。

方法一:

public  class  Test3  {

   public  static  void  main(String []  args)   {

      int  Num = 0;

      for(int i = 1;i <= 100;i++)   {

          if(i % 6 == 0)   {

           System.out.println("  " +i);

            Num++;

}

if(Num == 5)  break;

}

}


方法二:

public  class  Test3  {

   public  static  void  main(String []  args)   {

     int i = 1; int Num = 0;

      while(i <= 100)  {

         if(i % 6 ==0) {

            System.out.println(“  ” +i);

     Num++;

        }

          if(Num ==5)  {

           break;

        }

          i++;

  }

 }

}

总结:

    不同语句通过程序员的编译可以完成相同的要求。我们学习语句也不能死学,要懂得灵活运用一题多解。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值