Предлагается самый простой алгоритм вычисления \(k\)-й слева цифры любого числа (придуманный уже не мной, а коллективным разумом программистов на C).
Если поделить число \(n\) на 10, то тогда остаток от деления \(n\) на 10 (обозначим его \(n \bmod 10\)) будет равен самой правой цифре. Сколько цифр в числе \(n\)? Правильно, \(\lceil \log_{10} n \rceil\). Далее, если поделить число \(n\) на 100, то остаток, разделённый на 10 и округлённый вниз до целого, будет равен второй цифре. Чувствуете закономерность?
\[n_{i_k} = \left\lfloor \frac{n}{10^{\lceil \log_{10} n - k \rceil}}\right\rfloor \bmod 10\]
Для самой правой цифры числа формула примет вид
\[n_{i_K} = n \bmod 10.\]