プログラミングの備忘録

プログラムをつくる過程を残すもの

Project Euler を通して Haskell を学ぼう

こんにちは。 今回は Project Euler の第1問から第10問まで Haskell で解いてみようと思います。 Project Euler は、時間制限なしの競技プログラミングのようなもので、過去に紹介しています。 taq.hatenadiary.jp そして、Haskell も最近始めました。 taq.h…

プログラミング言語「Chef」を触ってみる

こんにちは。 今回は、プログラミング言語「Chef」を紹介します。 一風変わったプログラミング言語シリーズ (?) の4つ目です。 プログラミング言語「Piet」を使ってみる - プログラミングの備忘録 プログラミング言語「Uiua」を使ってみる - プログラミング…

プログラミング言語「Haskell」を触ってみる

こんにちは。 今回は、プログラミング言語「Haskell」を触ってみます。 最近は一風変わったプログラミング言語シリーズ (?) を更新していますが、そのネタを探す最中「ラムダ計算」というものに出会いました。 いろいろ歩き回っていたら「Haskell」という言…

プログラミング言語「Shakespeare」を触ってみる

こんにちは。 今回は、プログラミング言語「Shakespeare」を紹介します。 一風変わったプログラミング言語シリーズ (?) の3つ目です。 プログラミング言語「Piet」を使ってみる - プログラミングの備忘録 プログラミング言語「Uiua」を使ってみる - プログラ…

processingの備忘録 -逆高速フーリエ変換-

こんにちは。 今回は「逆高速フーリエ変換」を processing で実装してみます。 なかなか長編になってきました、フーリエ変換シリーズです。 processingの備忘録 -離散フーリエ変換- - プログラミングの備忘録 processingの備忘録 -逆離散フーリエ変換- - プ…

processingの備忘録 -逆離散フーリエ変換-

こんにちは。 今回は「逆離散フーリエ変換」を processing でできるようにしてみようと思います。 これまでに、フーリエ変換シリーズとして何記事か書いてきました。 processingの備忘録 -離散フーリエ変換- - プログラミングの備忘録 processingの備忘録 -…

processingの備忘録 -ASCIIアート-

こんにちは。 今回は、processing で「ASCIIアート」をつくります。 目次 ASCIIアートとは 実装 画像の読み込み グレースケール化 文字列に変換 出力 まとめ 参考 ASCIIアートとは ASCIIアートは、文字で描かれた絵のことを指し、略称として「AA」とよばれる…

タッパーの自己言及式の謎を解く

こんにちは。 今回は「タッパーの自己言及式 (Tupper's self-referential formula)」を取りあげようと思います。 (記事タイトルを AI が生成してくれるようになったので、さっそく使ってみました。) 例のごとく、少し前にこんなツイートを見かけました。 Tup…

プログラミング言語「Uiua」を触ってみる

こんにちは。 今回は、プログラミング言語「Uiua」を紹介します。 こんなツイートを見た。 Uiuaで遊んでみた!array language系は初めてだからプログラムの組み方に戸惑ったけどなんとかできた!これはキュゥべえを描くプログラムhttps://t.co/p0rtiGun1k pi…

processingで粉遊び的なものをつくってみる

こんにちは。 今回は、processing で「粉遊び」的なものをつくってみます。 「粉遊び」というゲーム自体は、以前にセル・オートマトンを取り上げた際に「ラングトンのアリ」の部分で少し引き合いに出しました。 dan-ball.jp taq.hatenadiary.jp ダンボールの…

processingの備忘録 -音声-

こんにちは。 今回は「processing で音声を扱ってみよう」です。 かなり間が空きましたが、過去に画像とテキストの生成・読み込みを取り上げています。 processingの備忘録 -png、gifの生成- - プログラミングの備忘録 processingの備忘録 -txt、csvの生成- …

プログラミング言語「Piet」を触ってみる

こんにちは。 今回は、プログラミング言語「Piet」を紹介します。 実は最近、こんなツイートをしました。 自己紹介。 pic.twitter.com/qc3IJRT4qD— taq (@taq2777) 2023年9月24日 これを見て"自己紹介"を感じていただけたならそれはそれで芸術の面白さを感じ…

「Stone Story RPG」で遊んでみる

こんにちは。 今回は「Stone Story RPG」というゲームを遊んでみます。 ちょっと長めのイントロが入ります。 友人と Steam の無料ゲームを発掘することがままあるのですが、そこで「Super Auto Pets」というゲームを見つけました。 これがなかなかおもしろく…

フーリエ変換を利用して絵を描く

こんにちは。 今回は「フーリエ変換を利用して絵を描く」ということをやってみます。 フーリエ変換の利用法としてたまに挙げられるのが、「フーリエ変換の結果から周転円をつくって絵を描かせる」というものだと思います。 例えば、 Coding Challenge #130.1…

processingの備忘録 -高速フーリエ変換-

こんにちは。 今回は「高速フーリエ変換」を processing に実装してみようと思います。 以前、離散フーリエ変換 (DFT) について記事を書きました。 taq.hatenadiary.jp この方法ではfor文が2重になっており、$N$ が大きくなってくると計算量もその2乗で多く…

processingの備忘録 -離散フーリエ変換-

こんにちは。 今回は「離散フーリエ変換」を processing でできるようにしてみようと思います。 フーリエ変換と聞いてもパッと日常生活における利用例が思いつきませんが、化学系の研究を行っている私からすると、核磁気共鳴 (NMR) 分光や赤外分光 (FT-IR)、…

processingの備忘録 -ばね-

こんにちは。 今回は、processing で「ばね」をつくってみます。 Twitterを眺めていると、こんなツイートが目に入りました。 Friendly reminder that this 17-minute #YouTube video detailing the soft body #physics used in JellyCar Worlds exists. pic.…

「Screeps: Arena」を始めてみる

こんにちは。 今回は「Screeps: Arena」というゲームをやってみます。 目次 Screeps: Arena とは Tutorial Introduction Loop and import Script loop Import stuff Simple move First attack Creeps bodies Store and transfer Terrain Spawn creeps Harves…

Project Euler -Problem 81~90- (更新中)

2023/03/11 更新 Problem 81 こんにちは。 今回は「Project Euler」の第81問から第90問まで解いてみます。 80問目まではこちらに記事があります。 taq.hatenadiary.jp 以下ネタバレになるので、嫌だという方は先に解いてみてください。 projecteuler.net 目…

processingの備忘録 -ボロノイ図-

こんにちは。 今回は processing で「ボロノイ図」を描画する、という題です。 おそらく「ボロノイ図 processing」などで調べれば数多出てくるものだとは思いますが、やりたいのでやります。 目次 ボロノイ図とは プログラム 正攻法 成長法 まとめ 参考 ボロ…

pythonの備忘録 -ヒュッケル法 第2回-

こんにちは。 今回は、「python でヒュッケル法の計算をする」の第2回です。 前回、ヒュッケル法をプログラムにし、分子軌道関数の計算ができるようになりました。 taq.hatenadiary.jp ですがそれを図にする方法はまだ触れていませんでした。 ということで、…

pythonの備忘録 -ヒュッケル法-

こんにちは。 今回は「ヒュッケル法」を python で計算する、という題でやっていきます。 おそらくこの記事を読んでいる方はヒュッケル法をある程度知っていてその計算を機械にやらせたい、という方だと思いますので原理の説明はあまり詳しくはしないことに…

Project Euler -Problem 71~80-

こんにちは。 今回は「Project Euler」の第71問から第80問まで解いてみます。 70問目まではこちらに記事があります。 taq.hatenadiary.jp 以下ネタバレになるので、嫌だという方は先に解いてみてください。 projecteuler.net 目次 Problem 71 -Ordered fract…

processingの備忘録 -畑政義写像-

こんにちは。 今回は「畑政義写像」を描画してみます。 そもそもは二重振り子を実装しようと思っていろいろ調べていたのですが、そのときにこんなサイトを見つけました。 (その後、二重振り子は無事実装できました ( processingの備忘録 -二重振り子- )。)…

Project Euler -Problem 61~70-

こんにちは。 今回は「Project Euler」の第61問から第70問まで解いてみます。 60問目まではこちらに記事があります。 taq.hatenadiary.jp 以下ネタバレになるので、嫌だという方は先に解いてみてください。 projecteuler.net 目次 Problem 61 -Prime pair se…

Project Euler -Problem 51~60-

こんにちは。 今回は「Project Euler」の第51問から第60問まで解いてみます。 50問目まではこちらに記事があります。 taq.hatenadiary.jp 51問目からはのんびりと、月1で増えたらいいねくらいの感覚でやっていきます。 以下ネタバレになるので、嫌だという方…

processingの備忘録 -拡散律速凝集-

こんにちは。 今回は、拡散律速凝集の様をシミュレートしてみます。 これまで分子の衝突やランジュバン方程式など、ブラウン運動についていろいろやってきました。 taq.hatenadiary.jp taq.hatenadiary.jp (今更ですけどタイトルはLJポテンシャルになってま…

processingの備忘録 -二重振り子-

こんにちは。 今回は「二重振り子」をprocessingで描画してみたいと思います。 二重振り子をprocessingでやるのはn番煎じ的なところがありますが、やりたいのでやります。 目次 二重振り子とは プログラム化する おまけ まとめ 参考 二重振り子とは 「二重振…

迷路の最短経路から雷の軌跡をモデル化する

こんにちは。 前回も書いたように、迷路を使って雷の軌跡をモデル化します。 前回の記事はこちらです。 taq.hatenadiary.jp 目次 迷路の準備 最短経路の探索→雷のモデル化 まとめ 参考 迷路の準備 まずは迷路を用意します。 前回の方法に従って、迷路を生成…

processingの備忘録 -迷路-

こんにちは。 今回は、processingで迷路を作る、という題でやっていきます。 なんで迷路?と思われるかもしれませんが、それはこんなツイートを見つけたからです。 ランダムな迷路を作って、最上部から地面までの最短距離を算出することで、落雷をモデル化で…