吉里吉里/tjs2解説

\ *でFizzBuzz


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

別の問題出すのも面倒なのでFizzBuzzはこれからも何度か使っていきます

// \ と * を使ってFizzBuzz
for(var i = 1; i < 101; i = i + 1) {
    if (i == i \ 15 * 15) {
        // 15の倍数( = 3と5の倍数)だったらFizzBuzzと表示
        Debug.message("FizzBuzz");
    } else if (i == i \ 3 * 3) {
        // 3の倍数だったらFizzと表示
        Debug.message("Fizz");
    } else if (i == i \ 5 * 5) {
        // 5の倍数だったらBuzzと表示
        Debug.message("Buzz");
    } else {
        // 15,3,5の倍数では無かったたらiを表示
        Debug.message(i);
    }
}
ifの条件の部分が変わっています
なにをしているか分かるでしょうか?

\は割り算をして小数点以下を切り捨てます
*はただの掛け算です。
i\3で例を出します
i \ 3 * 3 真偽
1 0 0 偽 
2 0 0 偽 
3 1 3 真 
4 1 3 偽 
5 1 3 偽 
6 2 6 真 
7 2 6 偽 
3で割り切れる時には、切り捨てられる小数点以下がないので3を再び掛けると元の数に戻ります
よって、i \ 3 * 3を元の数iと==で比べて同じだったら3の倍数です

5,15についても同様です

更新履歴

取得中です。