How do I get matlab to list all numbers from 1 to 100 divisible by 6?

254 vues (au cours des 30 derniers jours)
Christina Kersten
Christina Kersten le 15 Sep 2018
Commenté : Walter Roberson le 10 Oct 2020
I only have basic matlab knowledge, so the simpler the code the better! Something that would be easy for me to understand. Thanks!

Réponses (1)

Stephen23
Stephen23 le 15 Sep 2018
Modifié(e) : Stephen23 le 15 Sep 2018
Method zero: colon and times:
>> 6.*(1:16)
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
Method one: mod and logical indexing:
>> v = 1:100; % any vector
>> v(mod(v,6)==0)
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
Method three: linear indexing:
>> v(6:6:end) % v starts from 1
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
Method three: colon:
>> 6:6:100
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
Method four: cumsum:
>> cumsum(6*ones(1,16))
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
Method five: rdivide, fix, eq, and logical indexing:
>> w = v./6;
>> v(fix(w)==w)
ans =
6 12 18 24 30 36 42 48 54 60 66 72 78 84 90 96
  4 commentaires
Jake Jacobs
Jake Jacobs le 10 Oct 2020
im terrible at this, how do you get 16 at the start though?
Walter Roberson
Walter Roberson le 10 Oct 2020
16 is floor(100/6) -- which is to say the maximum number of full multiples of 6 that fits into 100.

Connectez-vous pour commenter.

Catégories

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

Produits


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by