2014-02-17 4 views

ответ

4

Похоже, вы просто хотите проверить, находится ли разница между двумя числами в пределах определенного диапазона.

// Get the difference 
int d = test - test1; 

// Test the range 
if (-5 <= d && d <= 5) 
{ 
    // Within range. 
} 
else 
{ 
    // Not within range 
} 
5

Try:

if (Math.Abs(test - test1) <= 5) 
{ 
    // Yay!! 
} 

Это вызывает математическую функцию "Absolute", которая возвращает положительное значение, даже если отрицательный. Например. Math.Abs ​​(-5) = 5

2
using System; 
... 
if (Math.Abs(test - test1) <= 5) return true; 
11
const int absoluteDifference = 5; 

int test = 50; 
int test1 = 45; 

if (Math.Abs(test - test1) <= absoluteDifference) 
{ 
    Console.WriteLine("The values are within range."); 
} 
0

Вы можете капсулированное это в функции.
К сожалению, вы не можете использовать общий тип, потому что это не поддерживается для оператора +.
Так что он должен быть реализован для int и любых других типов.

public static bool DoesDifferenceExceed(int value, int differentValue, int maximumAllowedDiffernece) 
{ 
    var actualDifference = Math.Abs(value - differentValue); 
    return actualDifference <= maximumAllowedDiffernece; 
} 
Смежные вопросы