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.

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

Risposte (1)

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 Commenti

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.

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by