LoginSignup
7
1

More than 5 years have passed since last update.

C言語 AdventCalendar 2017に寄せて(+1次元セルオートマトン・ツリー)

Posted at

12/25くらいは 1次元セルオートマトン/ルール30(Rule 30) でクリスマスツリーを飾りましょう:christmas_tree:

rule30.c
#include <stdio.h>

#define RULE 30
#define N 33
int cell[2][N];

int main()
{
  int s, i, j;

  cell[0][N/2] = 1;
  for (i = 0; i < N/2; i++) {
    for (j = 1; j < N-1; j++) {
      putchar(cell[i&1][j] ? '*' : ' ');
      s = (cell[i&1][j-1] << 2) | (cell[i&1][j] << 1) | cell[i&1][j+1];
      cell[~i&1][j] = !!(RULE & (1 << s));
    }
    putchar('\n');
  }
  return 0;
}
(出力)
               *               
              ***              
             **  *             
            ** ****            
           **  *   *           
          ** **** ***          
         **  *    *  *         
        ** ****  ******        
       **  *   ***     *       
      ** **** **  *   ***      
     **  *    * **** **  *     
    ** ****  ** *    * ****    
   **  *   ***  **  ** *   *   
  ** **** **  *** ***  ** ***  
 **  *    * ***   *  ***  *  * 
** ****  ** *  * *****  *******

さてQiitaへの禊も済ませたので、あとは技術論とは無関係な雑談です。

C言語 AdventCalendar 2017に寄せて

くぅ~疲れましたw これにてAdventCalendar完走です!
実は、ネタ投稿[12/1分]したら代行の話を持ちかけられた[これは嘘]のが始まりでした
本当は話のネタなかったのですが[これは真実]
ご厚意[誰の?]を無駄にするわけには行かないので流行り[どこで?]のネタで挑んでみた所存ですw
以下、まどか達[誰?]のみんなへのメッセジをどぞ

...続きません。

自分で立てた訳でもない C言語 AdventCalendar 2017 ですが、最終的には 18記事 を投稿する結果となりました。参加された 7名(自分含む) の皆様もお疲れ様でした。25日全部埋めるハメにならなくて良かった。

ありそうな質問とその答え

Q: なんでそんなに投稿してんの?

A: さあ?別に義理も義務もなかったのですが、なんとなく。あえて言うなら、うっかり目標設定(於12/4)したせい。

Q: 暇なの?

A: いいえ。事前にネタを準備していた訳ではないので、「ほぼ毎日締め切り的なものが存在する」という状況は想像以上に 精神的負担 になります。特に期日厳守していないにもかかわらず、です。改めて、一人AdventCalendarを完遂させている方々を尊敬 いたします。

Q: C言語好きなの?

A: 大嫌いじゃないけど、大好きでもない、そんな感じ。外部要因がなければ、C++言語を使う方がマシです。

Q: いまどきC言語の需要なくない?

A: せやな。今年のC言語 AdventCalendarも12月直前まで参加者ゼロ(於11/27)だったようですし。人が想像する範囲よりも現実世界は多様ですから、どこに需要あるのかはわかりません。あるところにはあるんでしょう。

Q: 来年もまたやるの?

A: こんなにはもうやんねえよ ヽ(`Д´)ノ ウワァァァン

俺は参加はしない多分しないと思う
しないんじゃないかな
ま ちょっと覚悟はしておけ

7
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1