C#Math计算的几个常用方法

1、返回绝对值

		/// <summary>
        /// 【1】返回绝对值(可扩展为绝对负数,只要前面加上负号)
        /// </summary>
        /// <param name="num"></param>
        /// <returns></returns>
        public static string CalculateAVG(int num)
        {
            return Math.Abs(num).ToString();
        }

2、返回输入数字的平方运算

		/// <summary>
        /// 【2】返回输入数字的平方运算(可扩展为立方或者其他自身运算)
        /// </summary>
        /// <param name="x"></param>
        /// <returns></returns>
        public static double Square(double x) => x * x;

3、返回两个整数中间的倍数

        /// <summary>
        /// 【3】返回两个整数中间的倍数
        /// </summary>
        /// <param name="num"></param>
        /// <param name="limit"></param>
        /// <returns></returns>
        public static List<int> FindMultiples(int num, int limit) => Enumerable.Range(1, limit / num).Select(x => x * num).ToList();

4、计算bool值的与、或和与或运算

        /// <summary>
        /// 【4】计算bool值的与、或和与或运算
        /// </summary>
        /// <param name="array"></param>
        /// <param name="op"></param>
        /// <returns></returns>
        public static bool LogicalCalc(bool[] array, string op)
        {
            if (op == "AND")
                return array.All(x => x);
            else if (op == "OR")
                return array.Any(x => x);
            else
                return array.Aggregate((i, j) => i ^ j);
        }

5、求平均数(数组)

        /// <summary>
        /// 【5】求平均数(数组)
        /// </summary>
        /// <param name="marks"></param>
        /// <returns></returns>
        public static int GetAverage(int[] marks)
        {
            return (int)marks.Average();
        }

6、计算数字是否满足特定条件

        /// <summary>
        /// 【6】计算数字是否满足特定条件:涉及(数字转字符串、字符串内元素数字运算、幂运算)
        /// </summary>
        /// <param name="number"></param>
        /// <returns></returns>
        public static string DisariumNumber(int number)
        {
            return number.ToString().Select((x, i) => Math.Pow(char.GetNumericValue(x), ++i)).Sum() == number ? "Disarium !!" : "Not !!";
        }

7、返回小数点后两位

        /// <summary>
        /// 【7】返回小数点后两位
        /// </summary>
        /// <param name="amount"></param>
        /// <returns></returns>
        public static string FormatMoney(double amount)
        {
            return $"{"$"}{amount.ToString("0.00")}";
        }

8、抽象类型转double类型(带null值判断)

        /// <summary>
        /// 【8】抽象类型转double类型(带null值判断)
        /// </summary>
        /// <param name="s"></param>
        /// <returns></returns>
        public static double? ParseF(object s = null)
        {
            return double.TryParse(s?.ToString(), out var result) ? result : (double?)null;
        }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SheldonK

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值