Фон
Я работаю над симметричным классом округления и обнаружил, что застрял в том, как наилучшим образом найти число в позиции x, которое я буду округлять. Я уверен, что существует эффективный математический способ найти единственную цифру и вернуть ее, не прибегая к разбору строк.
Проблема
Предположим, у меня есть следующий (C #) псевдо-код:
var position = 3;
var value = 102.43587m;
// I want this no ↑ (that is 5)
protected static int FindNDigit(decimal value, int position)
{
// This snippet is what I am searching for
}
Кроме того, стоит отметить, что если мое значение является целым числом, мне нужно будет вернуть ноль для результата FindNDigit.
У кого-нибудь есть намеки на то, как мне следует подойти к этой проблеме? Это что-то, что совершенно очевидно, что я скучаю?