converting array to single
显示 更早的评论
i have this output:
output = dial ('1FUNDOG4YOU')
output =
1 3 8 6 3 6 4 4 9 6 8
(1 X 11) cell
but this is what i want
output :13863644968
(1X 1)
I've tried all sort of ridiculous stuff, str2num and the likes but nothing works . any idea on what to do to make the conversion happen? thanks
采纳的回答
更多回答(1 个)
Walter Roberson
2016-6-14
Be careful, str2num() will create double precision with only 53 bits of precision. If you need the full 64 bits of precision you will need a different calculation.
C = {1,3,8,6,3,6,4,4,9,6,8};
Cv = uint64([C{:}]);
output = sum( Cv .* (uint64(10).^uint64(length(Cv)-1:-1:0)), 'native' );
6 个评论
OLUBUKOLA ogunsola
2016-6-15
OLUBUKOLA ogunsola
2016-6-15
The function isstrprop and all both return logical values, so you don't need to compare them to anything. They are already boolean values, that can be used directly in an if statement:
if all(isstrprop(...))
...
else
...
end
No testing for "==0" is required.
OLUBUKOLA ogunsola
2016-6-15
OLUBUKOLA ogunsola
2016-6-15
编辑:Walter Roberson
2016-6-15
类别
在 帮助中心 和 File Exchange 中查找有关 Data Type Identification 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!