calculate the number of odd fence values instead of printing them
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sample Output:
Given A = [ 5, 4, 6, 7, 3 ; 1, 2, 3, 4, 5 ; 5, 6, 4, 2, 4 ; 4, 5, 3, 2, 1]
% output demo
There are 9 odd values in the fence.
% This is my code
% given a matrix
A = [5,4,6,7,3;1,2,3,4,5;5,6,4,2,4;4,5,3,2,1];
% Get the number of rows and columns
[m,n] = size(A);
odd = 0;
for i = 1:m % number of rows
for j = 1:n % number of column
if (mod(A(i),2)~= 0) % if the element is not equal to zero, this is odd values
odd = odd + 1;
end
end
end
fprintf("There are %d odd values in the fence",odd);
There are 9 odd values
but in my code, it is shows There are 15 odd values in the fence.
How to improve this code?
Réponse acceptée
Voss
le 28 Mar 2022
if (mod(A(i,j),2)~= 0)
Use A(i,j) instead of A(i)
4 commentaires
Image Analyst
le 28 Mar 2022
And why do you say there are 9 values? My code below shows there are 10 values. Why do we disagree? Which one did I count that you say should not be counted?
Plus de réponses (1)
Image Analyst
le 28 Mar 2022
A = [ 5, 4, 6, 7, 3 ; 1, 2, 3, 4, 5 ; 5, 6, 4, 2, 4 ; 4, 5, 3, 2, 1]
numOddNumbers = nnz(rem(A, 2))
0 commentaires
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!