0

MATLAB を使用して、ユーザーに名前を尋ねるスクリプトを作成する必要がありますinput。次に、 を使用してスクランブル形式で名前を返しますrandperm

ユーザーの名前を取得するには、次のものが必要です。

>>name = input('what is your name: ', 's');   
% user types name
% At this point, the variable: name, will contain 
% whatever value the user types (as a string of characters), 

randpermユーザー名のスクランブル バージョンを返す方法がわかりません。

助けてくれてありがとう!

4

2 に答える 2

0

これを試して:

scrambledname = name(randperm(numel(name)))

ここnumel(name)に文字数が表示nameされます。たとえば、10 としましょう。次にrandperm(10)、1 から 10 までの数字をランダムに並べます。おそらく [2 5 7 1 8 3 9 10 4 6] のようになります。

これは、 への索引付けに使用されますname。MATLAB では、文字nameの配列である などの文字列であっても、すべてが配列であることに注意してください。その乱数配列をインデックスとして適用すると、 の 2 番目の文字name、5 番目の文字、7 番目の文字などが続きます。

于 2013-09-09T08:40:30.030 に答える
0

これを試して:

name = input('what is your name: ', 's');
name(randperm(numel(name)))
于 2013-09-09T08:38:05.603 に答える