三角数のクリスマスツリー

『博士の愛した数式』(2006)
映画見てなくても、寺尾聰というだけで感動してしまいます!
ちょっと前は、吹奏楽部の顧問をしていた寺尾聰を見て、市の吹部に入りたくなってしまった私ですが、寺尾聰のおかげで、今や、数学がブームです。 博士のような数字にこだわりがある人、かっこいいです。素数もかっこいいです。。3月13日、9月19日といった、回文素数の誕生日の人が羨ましい!
もうわけのわからない世界に浸っています。

寒くなりました。11月もあと一週間です。そろそろクリスマスモードに入ろうかと思います。クリスマスは12月25日ですが、この1225という数字は残念ながら素数ではないです。でも、三角数ではあります。

ということで、三角数でクリスマスツリーを作りましょう。まずは、seqコマンドで、三角数を並べてみます。

takk@deb83:~$ seq 49 | perl -ne 'printf("%3d %s\n",$s+=$_,"#" x $_)'
  1 #
  3 ##
  6 ###
 10 ####
 15 #####
 21 ######
 28 #######
 36 ########
 45 #########
 55 ##########
 66 ###########
 78 ############
 91 #############
105 ##############
120 ###############
136 ################
153 #################
171 ##################
190 ###################
210 ####################

(省略)

1081 ##############################################
1128 ###############################################
1176 ################################################
1225 #################################################
takk@deb83:~$ 

斜めに広がっているのでツリーに見えそうです。
これにエスケープシーケンスで色付けして、いろいろ光らせればよいですね。
画面に入るように高さの調整も必要です。

takk@deb83:~$ seq 30 | perl -ne 'printf("%3d %s\n",$s+=$_,"#" x $_)' | perl -pe 's/#/sprintf("\x1b[3%dm#\x1b[39m",1+int rand 3)/ge'

tree-001

おっとスターを忘れていました。

takk@deb83:~$ printerbanner -w36 \* | cut -b8-;seq 31 | perl -ne 'printf("%s%s\n"," " x int((31 - $_)/2),"#" x $_)' | perl -pe 's/#/sprintf("\x1b[3%dm#\x1b[39m",1+int rand 3)/ge'

tree-002

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA