2017-09-28 7 views
-1

Hoこのようなベクトルを作ることができますか?[Peter '、' Maria '、' Michelle 'など]、そのベクトルからランダムな名前を選んでもいいですか?私は基本的に宝くじを作りたい。あなたは(1)cell arrayの文字ベクトル使用することができます名前が数字でないMatlabベクトル

答えて

2

M = {'Peter', 'Maria', 'Michelle'}; 

それとも、最近導入stringデータ型を使用して、あなたは文字列の(2)の配列を作成することができます。

M = ["Peter", "Maria", "Michelle"]; 

を使用して 1から numel(M)までの乱数を選択してください
n = randi(numel(M)); 

Mへのインデックスとして使用:

  • をオプションを指定すると(1)、{} -indexingは、文字配列を与えるだろう。
  • オプション(2)を使用すると、{} -indexingは再び文字配列を返します。または、() -indexingを使用して文字列を取得することもできます。文字列によるインデックス作成の詳細については、hereを参照してください。
  • だから、

winner = M{n}; % or winner = M(n); 
0

使用セルアレイとランディ機能。通常の行列では、すべての文字列は同じ長さでなければならず、セル配列には任意の内容を含めることができます

M = {'Peter', 'Maria', 'Michelle'}; 
name = M{randi([1, numel(M)])}; 
関連する問題