初めて0が現れる行数を特定するには

24 ビュー (過去 30 日間)
yu tabata
yu tabata 2018 年 11 月 10 日
コメント済み: Yoshio 2018 年 11 月 12 日
0と1が並ぶ行列(500x1)があります。 行列中に初めて0が現れる行数を特定する、行数をスカラーとして返す方法はありますか?
  1 件のコメント
Yoshio
Yoshio 2018 年 11 月 12 日
forや whileを使う基本的なアルゴリズムは大丈夫ですか?

サインインしてコメントする。

回答 (2 件)

Kei Otsuka
Kei Otsuka 2018 年 11 月 10 日
find関数を利用する方法は如何でしょうか。
% 適当に行列作成
data = round(rand(500, 1));
 
% 論理反転した後、find関数で非ゼロ要素を検索
idx = find(~data);
 
% 最小値(=初めて0が出現した行数)を求める
min(idx)
  1 件のコメント
Yoshio
Yoshio 2018 年 11 月 12 日
[~,ind] = min(data) でも行けそうです。0がたまたま最小値なのと、minの仕様で。
"最小値が複数回発生する場合、min は、最初に発生した最小値に対応するインデックスを返します。"

サインインしてコメントする。


mizu
mizu 2018 年 11 月 11 日
直接の回答ではありませんが、無料のオンラインコースをやると、基礎的な操作がわかるかと https://matlabacademy.mathworks.com/jp

カテゴリ

Help Center および File Exchange論理演算 についてさらに検索

Community Treasure Hunt

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

Start Hunting!