Using nested loops, write a Matlab program that goes through all elements of a matrix (2D array) and replaces every element that is either a multiple of 5 or 7 with -1.

12 Ansichten (letzte 30 Tage)
This is what I have so far...
A=input('enter an array');
num_rows = size(A,1);
num_cols = size(A,2);
for i=1:1:num_rows
for j=1:1:num_cols
if A(i,j)/ 5 or 7 = integer
fprintf('-1')
end
end
end
I'm not sure how to identify the multiples of 5 and 7 and make them replace that with the -1

Antworten (1)

Roger Stafford
Roger Stafford am 2 Apr. 2018
Your test on a number x from your array can be:
if round(x/5)==x/5 | round(x/7)==x/7
(Doing fprintf('-1') just prints out "-1" and is totally useless for your purposes.)
  2 Kommentare
Ciara Gornoski
Ciara Gornoski am 2 Apr. 2018
Bearbeitet: Walter Roberson am 2 Apr. 2018
I did this and I'm still not getting anything.
A=input('enter an array');
num_rows = size(A,1);
num_cols = size(A,2);
for i=1:1:num_rows
for j=1:1:num_cols
if round(A(i,j)/5)==A(i,j)/5 || round(A(i,j)/7)==A(i,j)/7
end
end
end
I'm just able to input an array but it doesn't give me an output.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by