collect and extract numbers to/from number
2 次查看(过去 30 天)
显示 更早的评论
Hi everyone how to collect some numbers (ex: 10,23,14,17 ) to be one number for example be 200 (according to ciphering method)and how to extract these four numbers from 200 number (according to deciphering method)
regards
1 个评论
Geoff Hayes
2015-1-10
编辑:Geoff Hayes
2015-1-10
Majid - please describe why are attempting this. Do you have algorithm already that will somehow map four (or more or less) numbers to a single number, which you will then decode back to the original four? Are your numbers always two digits, or can they be 1 or 5 or 342? What is the range of your input numbers - is it from 0 to 256?
采纳的回答
Image Analyst
2015-1-10
Try using inputdlg to get the 4 numbers. Call them a, b, c, and d. Then just do your algorithm, for example
a=10;
b=23;
c=14;
d=7;
% Encode by stitching together.
string = sprintf('%2.2d%2.2d%2.2d%2.2d', a,b,c,d)
number = str2double(string)
% Decode
aRecovered = int32(number/1e6)
bRecovered = mod(int32(number/1e4), 100)
cRecovered = mod(int32(number/1e2), 100)
dRecovered = mod(int32(number), 100)
In the command window:
string =
10231407
number =
10231407
aRecovered =
10
bRecovered =
23
cRecovered =
14
dRecovered =
7
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!