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

244 Ansichten (letzte 30 Tage)
I only have basic matlab knowledge, so the simpler the code the better! Something that would be easy for me to understand. Thanks!

Antworten (1)

Stephen23
Stephen23 am 15 Sep. 2018
Bearbeitet: Stephen23 am 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 Kommentare
Jake Jacobs
Jake Jacobs am 10 Okt. 2020
im terrible at this, how do you get 16 at the start though?
Walter Roberson
Walter Roberson am 10 Okt. 2020
16 is floor(100/6) -- which is to say the maximum number of full multiples of 6 that fits into 100.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by