Filter löschen
Filter löschen

Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

index in matrix using loop

1 Ansicht (letzte 30 Tage)
mohamed gamal
mohamed gamal am 28 Apr. 2019
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
hi i have an matrix in my code that i want to do some calculation on each index in it so first of all i want to check if that index is greater then 0 then i multiply by area then store it in new varible calld fill
if not i multiple this index with area then store it in variable calld fill
how can i do it
  3 Kommentare
dpb
dpb am 28 Apr. 2019
I'd guess it mandatory to give an example or at least clarify because as written the result is the same for either case...
mohamed gamal
mohamed gamal am 30 Apr. 2019
0.500000000000000 0.500000000000000
0.250000000000000 0.500000000000000
-0.500000000000000 -0.500000000000000
like this one and i want to do if the number in the index is + then multiple *AREA+fill
if its - then cut= the numer in matrix*Area +cut

Antworten (1)

Kevin Phung
Kevin Phung am 30 Apr. 2019
m = [0.5 0.5; 0.25 0.5; -0.5 -0.5] % your sample matrix
f = m(m>0) * A + fill
c = m(m<0) *A + cut
^ this only return the values that meet the positive/neg criteria. If you want to keep the same dimensions then do this:
new_m = m; %copy
new_m(m>0) = m(m>0) * A + fill; %operate on positives
new_m(m<0) = m(m<0) * A - cut;

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by