みやびの備忘録

LaTeXとかjulia言語とか. 覚えておきたいことをつらつら書いています.

JULIA言語

多倍長計算

Juliaで多倍長の小数演算. そう!BigFloat! a = BigFloat(0.1)って書いてたけど, こうではなく a = big"0.1"って書かねばならんらしい. BigFloat()っていう関数に渡す前の数字がFloat64で先に読み込まれてしまい, ずれた値が返ってきてしまう.ただ, big""っ…

配列の初期化(任意精度浮動小数点演算)

新年明けましておめでとうございます. 年越し研究室は避けたものの, 無事プログラミングをしながら年を越したみやびでございます. 配列の初期化は a = zeros(2) b = zeros(3, 2)ってするのだが, ここにいくら a[1] = BigFloat(1.0) b[2, 1] = BigFloat(sqrt(…

配列の扱い

JULIA言語では基本的に変数の宣言, 初期化は必要ない. a = 1 #int型 b = 1.0 #double型と, 勝手に認識してくれるし, c = a+b #1.1と, 自然な形で計算してくれる. あ, #~は1行のコメントアウトね. ちなみに複数行の場合は#= ~~~ =#で囲む.話を戻そう. 配…

関数の定義

functionだけ. 単純! function hoge(x) return x + 1 end x = 1 y = hoge(x) println(y) Cでいうところのdouble型(int型?)関数ですね. returnは省略可能.しかしvoid型の使い方が分からん!困った! さっきから分からないことだらけじゃないか! まあつまり…

for文, while文

基本的な構文 第2回 for文, while文みんな大好きループの代表格, forとwhileについて. for i in 1:10 println(i) end最後にendを置くのはif文と同じ. 変数を10, 9, 8, …と動かす方法がまだ分からず書かなきゃいけないプログラムが進まない… とりあえず普通に…

出力に関して

if文書いててこれを先に書くべきだったかと…printlnで改行付きの出力ができる. JULIA言語はCなどと違って変数の型宣言をする必要がないので, %fとか%dとかは必要なく, a = 1 println(a)って感じ. 横にデータを並べて間に空白を入れたいときは print(a) print…

if文

基本的な構文 第1回 if文 a = 1 if a == 1 println(a) elseif a > 1 a = a + 1 println(a) else a = a - 1 println(a) endこんな感じ. 全ての処理が終わるところにendを入れる. if ~~ end else ~~ endは間違い.

JULIA言語について

数値計算に特化したプログラミング言語, JULIA言語.数や文字を結構直感的に(?)扱えたり, 多倍長計算を簡単に出来たりなど, まあなにかと便利なんですよ. Cで多倍長計算を実装しようとしたとき, どれだけ苦労したことか…結局出来なかったし…で, デスクトップ…