zoukankan      html  css  js  c++  java
  • Area of a Circle

    Area of a Circle

    Description:

    Complete the function circleArea so that it will return the area of a circle with the given radius. Round the returned number to two decimal places (except for Haskell). If the radius is not positive or not a number, return false.

    Example:

    Kata.CalculateAreaOfCircle("-123"); //throws ArgumentException
    Kata.CalculateAreaOfCircle("0"); //throws ArgumentException
    Kata.CalculateAreaOfCircle("43.2673"); //return 5881.25
    Kata.CalculateAreaOfCircle("68"); //return 14526.72
    Kata.CalculateAreaOfCircle("number"); //throws ArgumentException
    using System;
    
    public static class Kata
    {
      public static double CalculateAreaOfCircle(string radius)
      {   
        //Solve!
        try
                {
                    //if (radius.IndexOf(',') != -1)
                    if (radius.Contains(","))
                    {
                        throw new ArgumentException();
                    }
                    double r = Convert.ToDouble(radius);
                    if (r <= 0)
                    {
                        throw new ArgumentException();
                    }
                    else
                    {
                        return Convert.ToDouble((Math.PI * Math.Pow(r, 2)).ToString("f2"));
                    }
                }
                catch
                {
                    throw new ArgumentException();
                }
      }
    }

    其他人的解法:

    使用Math.Round以及out参数  double的TryParse

    using System;
    
    public static class Kata
    {
      public static double CalculateAreaOfCircle(string radius)
      {   
        double number;
    
        if (radius.Contains(",") || !double.TryParse(radius, out number) || double.TryParse(radius, out number) && number < 1)
        {
          throw new ArgumentException();
        }
        
        return Math.Round(number * number * Math.PI, 2);
    
      }
    }
  • 相关阅读:
    关于Java中System.currentTimeMillis和System.nanoTime的错误认识
    多线程以外
    vim 小技巧
    Virtual Box HostOnly网络模式配置
    How 30 Minutes a Day Can Increase Your Intelligence
    YUM命令使用
    Hash算法及其应用
    jetty + apache httpd 反向代理配置
    使用SCTP优化网络
    .NET书籍推荐
  • 原文地址:https://www.cnblogs.com/chucklu/p/4622733.html
Copyright © 2011-2022 走看看