数字计数器MatLab

时间:2013-11-07 08:44:00

标签: matlab function counter

我正在创建一个计算整数位数的函数。然而答案仍然是零。现在已经晚了,我可能会忽略一些非常简单的事情。感谢。

function [ count ] = CountDigits( input )

s = int2str(input);      % convert the input to a string
count = 0;               % initialize count to zero
n = length(s);           % total length of s

    for k = 1 : 1 : n
        if s(1,k) >= '0' && s(1,k) <= '9'           % is digit
            count = count + 1;                      % add to count if digit
        end
    end
end

2 个答案:

答案 0 :(得分:4)

我认为你忽视了像

这样简单明了的事情
floor(log10(abs(your_integer_here))+1)

答案 1 :(得分:3)

numel(num2str(abs(your_integer_here))) 诀窍。