flowering dogwood

社会人5年目。
「若手」と言い張る中堅予備軍。
新人教育係。
<< December 2019 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>
# スポンサーサイト

一定期間更新がないため広告を表示しています

| - | - | | category: - |
<< のどが痛い | main | 無理して取る代休 >>
# 食える数学 ...神永正博
買ったばかりの数学の本は「食える数学」。

得意ではないし、専門でもないけど、好きではあった数学。
だから読み物としてはおもしろい。
ただ、本当に数学で食っていこうと思ってる人にとって役に立つんだろうか??
って感じだった。最後のほうとかぐだぐだだったしなぁ。
結局のところ「だから何?」的な仕上がりだと思ってしまった。スミマセン。

あと、途中で出てきた「FizzBuzz問題」というやつに、
どうしてもコーディングしてみないと気が済まなくて、
読むのをやめて書いて動かしてみた。

実際には、打鍵の時間も入れると、私には2分は無理だな・・・
さらにCの文法(printfなど)を忘れていたりもして、久々のコーディングは時間かかった。
さらにさらに、久々に動かしたXcodeの使い方にも手間取った。
(とはいえ5分くらいだとは思うけど。)

でもウェブを見てみるに、ロジックは合っているようだ。

キレイに出力するスキルは持ってない(文法忘れた)ので、
出力はキタナい。一応、10の区切りで改行入れてます。

<問題>
1から100までの数字をプリントするプログラムを書け。
ただし3の倍数のときは数の代わりに「Fizz」、5の倍数のときには「Buzz」、
3と5両方の倍数の場合には「FizzBuzz」とプリントすること。

<解答>

#include <stdio.h>

int main (int argc, const char * argv[]) {
    int x;
    for(x=1;x<=100;x++){
        if(x%15==0){
            printf("FizzBuzz ");
        }else if(x%3==0){
            printf("Fizz ");
        }else if(x%5==0){
            printf("Buzz ");
        }else{
            printf("%d ",x);
        }
        if(x%10==0)printf("¥n");
    }
   
    return 0;
}

<出力>

1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz
11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz
Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz
31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz
41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz
Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz
61 62 Fizz 64 Buzz Fizz 67 68 Fizz Buzz
71 Fizz 73 74 FizzBuzz 76 77 Fizz 79 Buzz
Fizz 82 83 Fizz Buzz 86 Fizz 88 89 FizzBuzz
91 92 Fizz 94 Buzz Fizz 97 98 Fizz Buzz


これを解くのに時間のかかるプログラマもいるんだって。
これが解けるかでスキルを計るっていうことがあるみたい。

要は余りをうまく使いましょうってことなんだが、
気付かない限り、たしかに何分もかかるだろうな。。
| comments(0) | trackbacks(0) | 22:09 | category: books |
# スポンサーサイト
| - | - | 22:09 | category: - |
コメント
コメントする









この記事のトラックバックURL
http://akt19.jugem.cc/trackback/1605
トラックバック
Selected Entry
Categories


栗城さん応援中↓↓
Links
Profile
Comments
Trackback
Mobile
qrcode
Others
Search this site
Sponsored Links