Я знаю, что это действительно окажется простым, но мой мозг просто не работает. Мне нужна функция в C#, который возвратится-1, если целое число, переданное функции, будет иметь знак минус, возвратитесь 1, если целое число имеет положительный знак, и возвратитесь 0, если число передало, 0. Так, например:
int Sign=SignFunction(-82); // Should return -1
int Sign2=SignFunction(197); // Should return 1
int Sign3=SignFunction(0); // Should return 0
Это уже в рамках. Просто используйте Math.Sign ...
int sign = Math.Sign(-82); // Should return -1
int sign2 = Math.Sign(197); // Should return 1
int sign3 = Math.Sign(0); // Should return 0
Кроме того, он будет работать с:
int sign4 = Math.Sign(-5.2); // Double value, returns -1
int sign5 = Math.Sign(0.0m); // Decimal, returns 0
// ....
public int SignFunction(int number)
{
return number.CompareTo(0);
}
public int SignFunction( int input )
{
if( input < 0 ) return -1;
if( input > 0 ) return 1;
return 0;
}
public int SignFunction(int number) {
return (number > 0) ?
1 : (number < 0) ?
-1 : number;
}
public int Sign(int number)
{
if(number==0)
return 0;
return number/Math.Abs(number);
}
Если бы Math.Sign
не существовало, я бы сделал следующее:
return x == 0 ? 0 : x / Math.Abs(x);