How can i solve this array question?

2 visualizaciones (últimos 30 días)
Emma Swaggy
Emma Swaggy el 21 de Mayo de 2017
Comentada: Walter Roberson el 7 de Abr. de 2018
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 comentario
Thomas Nguyen
Thomas Nguyen el 7 de Abr. de 2018
This is very unclear + no example of any sort => can't help unless you be more specific

Iniciar sesión para comentar.

Respuestas (1)

Walter Roberson
Walter Roberson el 21 de Mayo de 2017
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 comentarios
Walter Roberson
Walter Roberson el 22 de Mayo de 2017
I just showed you how to do it with the example of replacing 7 with 8. You can make the obvious changes.
Walter Roberson
Walter Roberson el 7 de Abr. de 2018
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.

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by