2014-01-28 161 views
2

當人們正在編寫hang子手繪圖代碼時,我正在嘗試簡單的單詞問題並失敗。 我想寫一個功能,將採取一個單詞和字母,並會檢查信件是否在那裏,並相應地顯示該字。這個詞可以有大寫或小寫字母。但是,被測試的信件總是小寫。現在一個例子,Hang子手空白區域

function out=hangman(word,letter) 
word='elEphaNt' 
letter='e' 
out='e_E_____' 

的代碼,我寫道:

function board=hangman(word,letter) 
    compare=((word==letter)| word==char(double(letter)-32)); 
    word=word(compare); 
    end 

然而,這僅輸出 'EE' 無空格。我怎樣才能包含空格? 謝謝!

回答

2

Define out as word然後替換不匹配的字符。爲了測試匹配,使用lower一切轉換爲小寫:

word = 'elEphaNt'; 
letter = 'e'; 
out = word; 
out(~(lower(out)==lower(letter))) = '_'; 

在你的代碼,就可以實現這個替換你的最後一行

word(~compare) = '_'; 

,可能分配board = word;以返回。

+0

謝謝!我以爲我試過這個選項! 如果沒有這個幫助,我會花1-2小時! – user3226108