2012-10-12 39 views
1

我正在尋找建議,看看是否有人知道如何得到這個工作... 我有一些球員的名字,我想轉換爲數字存儲在列表中。從sprintf函數中檢索值?

for k = 1:player_name; 
    pn = sprintf('Enter the name of player %d', k); 
    inputdlg(pn); 
end 

例如,我想找回玩家2. 我的想法是這樣的名稱:

player1 = str2num(pn %d, k); 

,但我不能得到這個工作... 任何想法大受歡迎!

回答

2

這裏是我的解決問題的方法:

numPlayers = inputdlg('Enter the number of players'); 
numPlayers = str2num(numPlayers{1}); 

for i=1:numPlayers 
    name{i} = inputdlg(['Enter the name of player ' num2str(i)]); 
end 

現在訪問玩家1名

name1 = name{1} 
+0

太棒了!非常感謝twerdster它的工作原理! – richyo1000

+0

hey twerdster或任何人閱讀,是否可以將玩家名稱轉換爲數字?我嘗試了簡單的改變:name {i} = inputdlg(['輸入玩家的名字'str2num(i)]);但它不以這種方式工作....任何想法?謝謝 – richyo1000

+0

你是什麼意思的數字?如果我輸入名稱「彼得」,你想從中得到什麼樣的數字?散列函數? – twerdster