刽子手空白

时间:2014-01-28 07:12:43

标签: matlab

当人们正在编写刽子手绘图代码时,我正在尝试简单的单词问题并且失败了。 我想写一个函数,它会接受一个单词和一个字母,并检查字母是否存在并相应地显示该单词。这个词可以有大写或小写字母。但是,被测试的信件总是小写的。现在举个例子,

    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'而没有空格。如何包含空格? 谢谢!

1 个答案:

答案 0 :(得分:2)

out定义为word,然后替换不匹配的字符。要测试匹配,请使用lower将所有内容转换为小写:

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

在您的代码中,您可以通过

实现此替换最后一行
word(~compare) = '_';

并且可能会指定board = word;来返回。