How can i solve this array question?
6 次查看(过去 30 天)
显示 更早的评论
write a program that asks the user to enter integer numbers and store the numbers in a two dimensional array, then replace any 9 digit by 0 digit. After that Change the numbers that are in odd row positions by the even row positions.
1 个评论
Thomas Nguyen
2018-4-7
This is very unclear + no example of any sort => can't help unless you be more specific
回答(1 个)
Walter Roberson
2017-5-21
The easiest way to replace 9 digits with 0 digits is to int2str() the number, store the result, use logical indexing to find the '9' characters, store '0' characters instead, then str2double() the string after replacement.
Example:
t = sprintf('%d', A_Number);
t(t == '7') = '8';
str2double(t)
3 个评论
Walter Roberson
2017-5-22
I just showed you how to do it with the example of replacing 7 with 8. You can make the obvious changes.
Walter Roberson
2018-4-7
temp = arrayfun(@(x) sprintf('%d', x), YourArray, 'uniform', 0);
now you can proceed through the entries in the cell array temp making the substitutions, producing a new cell array. Then you can str2double() the new cell array to get back to a numeric array.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!