code with out using loops

11 vues (au cours des 30 derniers jours)
omar khasawneh
omar khasawneh le 25 Déc 2020
Commenté : Jan le 27 Déc 2020
how can I write a code segment that flips an N*M array up to down *Do not use loops or flip function
  2 commentaires
James Tursa
James Tursa le 26 Déc 2020
What have you done so far? What specific problems are you having with your code?
Stephen23
Stephen23 le 27 Déc 2020

Connectez-vous pour commenter.

Réponse acceptée

Image Analyst
Image Analyst le 25 Déc 2020
What did your course tell you about indexing? Like
indexes = startingValue : stepValue : endingValue;
If you still need help, reply only after reading the link below:
  5 commentaires
Image Analyst
Image Analyst le 26 Déc 2020
Read my comment again - there is no accusation. Just a question as to explain how we can help you with this question that can be solved in one line of code. Since it's only one line of code, it's hard to help you without doing the whole thing for you. That's why I gave the hint I did. If I give any more than that, then it's completely done and there is nothing more for you to do. At least this way, I think you can change variable names and be able to say you did it yourself.
Jan
Jan le 27 Déc 2020
@omar khasawneh: There is no accusation. Image Analyst gave you a useful hint.

Connectez-vous pour commenter.

Plus de réponses (1)

omar khasawneh
omar khasawneh le 26 Déc 2020
okay , I got it ...
I solved like this A = [1 2 3 ; 4 5 6; 7 8 9];
A = A' % transpos
A = rot180(A) %rotation
  1 commentaire
Image Analyst
Image Analyst le 26 Déc 2020
OK, that works as long as you have written a special rot180() function. I'm not seeing it in base MATLAB. If I instead use imrotate() to do that part:
A = [1 2 3 ; 4 5 6; 7 8 9];
A = A' % transpos
% A = rot180(A2) %rotation
A = imrotate(A, 180)
I get
A =
1 4 7
2 5 8
3 6 9
A =
9 6 3
8 5 2
7 4 1
Which is not flipped up to down. It also flips left to right.
The solution most MATLABers would use is a single line of code using the hint I gave. So here is a little bit more:
A = A(startingValue : stepValue : endingValue, :);
That's it. One single line of code. See if you can supply the values.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits


Version

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by