writing a program on matlab
4 views (last 30 days)
Show older comments
Hi, I have to write a program that asks you to enter a number and then shows how many digits it has. Who can help me?
1 Comment
Walter Roberson
on 18 Feb 2018
The first step is to define exactly all of the forms of representation of numbers that are to be permitted. For example, is the user permitted to have spaces between a negative sign and what follows? When the number has absolute magnitude less than 1, is the user permitted to omit the leading 0? Which exponent characters are permitted? Is the optional '+' allowed for positive exponents? What is the maximum length of input that is required to be processed properly? Will you permit Ɔ and ↀ when the user gives Roman Numeral input?
Accepted Answer
Birdman
on 18 Feb 2018
a=input('Enter a number\n');
dig=numel(num2str(a))
3 Comments
Image Analyst
on 18 Feb 2018
If you don't want to count decimal points (commas or dots), you can do this:
str = input('Enter a number ');
% Convert to string
str = num2str(str)
% Get rid of decimals and commas
str = strrep(str, '.', '');
str = strrep(str, ',', '');
% Now count digits
numberOfDigits = numel(str)
Walter Roberson
on 18 Feb 2018
numel(num2str(18446744073709551615))
ans =
21
>> numel('18446744073709551615')
ans =
20
More Answers (0)
See Also
Categories
Find more on Dates and Time in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!