MATLABでFizz Buzz

Fizz Buzzとは

・3の倍数→Fizz

・5の倍数→Buzz

・15の倍数→Fizz Buzz

つまり

1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, Fizz Buzz, 16, 17, Fizz, 19, Buzz, Fizz, 22, 23, Fizz, Buzz, 26, Fizz, 28, 29, Fizz Buzz, 31, 32, Fizz, 34, Buzz, Fizz, …

となるように出力されるようなプログラムを作る問題である。今回は単純にif文で実装し、結果はcell型の配列に代入した。

N=200;

t=1:1:N;
result=cell(1,N);

for i=1:1:N
    if and(rem(i,3)==0,rem(i,5)==0)
        result{1,i}={'Fizz Buzz'};
    elseif rem(i,3)==0
        result{1,i}={'Fizz'};
    elseif rem(i,5)==0
        result{1,i}={'Buzz'};    
    else       
        result{1,i}={i};
    end
    disp(result{1,i});
end

コメント

タイトルとURLをコピーしました