检查一个数字是否可被20 MATLAB整除

时间:2016-07-14 20:02:58

标签: matlab psychtoolbox mod

下面的代码不起作用,因为该程序不知道我们所使用的试用号码是否可被20整除。基本上,我想检查试验是否为20,40,60等,如果所以,如果他们愿意,让主题休息一下。

numTrials = 345;

for trial = 1:ntrials

% Take a break every 20 trials, subject can press space key to move on
 if mod(trial, 20) == 0
     breakText = ['Take a break or press the spacebar to continue'];
     tic
     while doc < 30 && ~keyPress
         DrawFormattedText(window, breakText, 'center', 'center', black)
         Screen('Flip', window);
         if (keyCode(spaceKey) == 1)
             break;
         end
     end

end

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以使用modrem来确定某个数字是否可以被另一个数字整除。对于正数,它们在除以两个数后都返回余数。如果一个数字完全被另一个数字整除,则余数将为零。

is_divisible_by_20 = rem(number, 20) == 0

对于完全可被20整除的数字,这将评估为true,因此您可以将其替换为if语句中的条件。

if rem(number, 20) == 0
    % Take a break
end