Получение старшей значащей цифры значения в Objective C

В настоящее время у меня есть код на объектном C, который может извлекать значение старшей значащей цифры целого числа. Мой единственный вопрос заключается в том, есть ли лучший способ сделать это, чем то, как я представил ниже. Он выполняет свою работу, но это просто похоже на дешевый хак.

Что делает код, так это то, что он берет переданное число и повторяет цикл до тех пор, пока это число не будет успешно разделено на определенное значение. Я делаю это для образовательного приложения, которое разбивает число по его значению и показывает значения, сложенные вместе, для получения окончательного результата (1234 = 1000 + 200 + 30 + 4).

int test = 1;
int result = 0;
int value = 0;

do {
    value = input / test;
    result = test;
    test = [[NSString stringWithFormat:@"%d0",test] intValue];
} while (value >= 10);

Любой совет всегда приветствуется.

5
задан Richard J. Ross III 29 March 2012 в 21:23
поделиться