В настоящее время у меня есть код на объектном 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);
Любой совет всегда приветствуется.