How do I get matlab to list all numbers from 1 to 100 divisible by 6?
253 ビュー (過去 30 日間)
古いコメントを表示
I only have basic matlab knowledge, so the simpler the code the better! Something that would be easy for me to understand. Thanks!
0 件のコメント
回答 (1 件)
Stephen23
2018 年 9 月 15 日
編集済み: Stephen23
2018 年 9 月 15 日
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 件のコメント
Walter Roberson
2020 年 10 月 10 日
16 is floor(100/6) -- which is to say the maximum number of full multiples of 6 that fits into 100.
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!