小言_互联网的博客

C#练习题答案: 摩门经【难度:2级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战

306人阅读  评论(0)

摩门经【难度:2级】:

答案1:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
      if( target <= startingNumber )
         return 0;
         
      return 1 + Mormons(startingNumber + startingNumber*reach, reach, target); 
  }
}

答案2:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    if(startingNumber >= target){
      return 0;
    }
    long missionEnd = startingNumber * reach + startingNumber;
    return 1 + Mormons(missionEnd, reach, target); 
  }
}

答案3:

public class Kata
{
  public static long Mormons(long mormons, long reach, long target)
  {
    long missions = 0;
    if(mormons>=target)return missions;
    mormons+=mormons*reach;
    missions++;
    if(mormons<target) missions+=Mormons(mormons, reach,target);    
    return missions;
  }
}

答案4:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    return startingNumber >= target ? 0 : Mormons(startingNumber += startingNumber * reach, reach, target) + 1;
  }
}

答案5:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    int _count = 0;

            while (startingNumber < target)
            {
                _count++;
                return _count + Mormons(startingNumber + startingNumber * reach, reach, target);
            }
            return 0;
  }
}

答案6:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    return Mission(startingNumber, reach, target);
  }
  
  public static long Mission(long s, long r, long t){
    if (s >= t) return 0;
    return 1 + Mission(s + (r * s), r, t);
  }
}

答案7:

using System;

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    long m = 0;
    long c = startingNumber;
    
    while(c < target)
    {
    c = c + (c * reach);
    m++;
    }
    
    return m;
  }
}

答案8:

   public class Kata
    {
        public static long Mormons(long s, long r, long t)
        {
            long res = 0;
            while(s < t)
            {
                s = s * r + s;
                res++;
            }
            return res;
        }
    }

答案9:

public class Kata
{
  public static long Mormons(long mormons, long reach, long target)
  {
    if(mormons>=target) return 0;
    return 1+ Mormons(mormons*(reach+1), reach, target);
  }
}

答案10:

public class Kata
{
  public static long Mormons(long startingNumber, long reach, long target)
  {
    if (startingNumber >= target) return 0;
            else return 1 + Mormons(startingNumber * reach + startingNumber, reach, target);
  }
}




转载:https://blog.csdn.net/weixin_45444821/article/details/101830336
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场