当前位置:编程学习 > C#/ASP.NET >>

发个小面试题散散分,有兴趣的童鞋们来试试

编写代码实现下面的计算公式:
f(x) = 1-2+3-4+5-6+...-m+n。
以上是原题。如果能搞定的话下面把要求再提高一点,用一行代码搞定(可以用函数,大神们可以考虑一下不用函数的方法)。

--------------------编程问答--------------------         public static int f(int n)
        {
            return n % 2 == 0 ? -n / 2 : -(n - 1) / 2 + n;
        } --------------------编程问答--------------------
引用 1 楼 gxingmin 的回复:
public static int f(int n)
        {
            return n % 2 == 0 ? -n / 2 : -(n - 1) / 2 + n;
        }

你一大专家这么小的问题也这么积极。考虑考虑不用函数呗。 --------------------编程问答-------------------- arr.Sum() ? --------------------编程问答-------------------- 我是大专家?

其实没用函数
int result= n % 2 == 0 ? -n / 2 : -(n - 1) / 2 + n; --------------------编程问答--------------------
引用 4 楼 gxingmin 的回复:
我是大专家?

其实没用函数
int result= n % 2 == 0 ? -n / 2 : -(n - 1) / 2 + n;


这样就可以了 --------------------编程问答-------------------- int result= n % 2 == 0 ? -n / 2 : -(n - 1) / 2 + n; --------------------编程问答-------------------- 最简单的了,n是最后一个数

f(x) = (1-2)*(n%2)+(n%2==0?0:n); --------------------编程问答-------------------- 些错了


f(x) = (1-2)*(n/2)+(n%2==0?0:n); --------------------编程问答--------------------
引用 楼主 aley 的回复:
编写代码实现下面的计算公式:
f(x) = 1-2+3-4+5-6+...-m+n。
以上是原题。如果能搞定的话下面把要求再提高一点,用一行代码搞定(可以用函数,大神们可以考虑一下不用函数的方法)。


能再提提要求看看吗
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,