2026年7月2日木曜日

Julia の最低限の文法

 Julia の文法(最低限)に関するメモです.

変数の設定

julia> a = 7

julia> b = 2


四則演算

julia> println(a + b)      # 足し算

9

julia> println(a / b)      # 割り算(小数になる)

3.5

julia> println(a ÷ b)      # 整数の商(÷ は \div と打って Tab キー)

3

julia> println(a % b)      # 余り

1

julia> println(a ^ 3)      # べき乗

343

julia> println(sqrt(2))    # 平方根

1.4142135623730951

julia> println(Float64(π)) # 円周率(π は \pi と打って Tab キー)

3.141592653589793

println(...)は値を表示する命令.

変数の設定

julia> p = 1//6

分数の計算("//"で分数(有理数)を作れます.厳密な計算するときに使います.)

julia> println(p + p)            # 1//3 と約分される

1//3

julia> println(6 * p)            # 1//1(分数のまま1)

1//1

julia> println(float(1//3))      # 分数を小数にする

0.3333333333333333


配列の設定

julia> x = [1, 2, 3, 4, 5]        # 配列


配列と範囲

julia> println(x[1])              # 1番目の要素(Juliaは1から数える)

1

julia> println(sum(x))            # 合計

15

julia> println(1:6)               # 1から6の範囲

1:6

julia> println(collect(1:6))      # 範囲を配列にする

[1, 2, 3, 4, 5, 6]

julia> println(x .^ 2)            # 各要素を2乗(. は「要素ごとに」の印)

[1, 4, 9, 16, 25]

julia> println(x .* x)            # 各要素同士の積

[1, 4, 9, 16, 25]

"."(ドット )は「配列の各要素に対して」という意味.

関数の定義

julia> f(x) = x^2 + 1             # 数式のように関数を定義できる

関数

julia> println(f(3))

10

julia> println(f.([1, 2, 3]))     # 配列の各要素に適用

[2, 5, 10]


julia> function pmf_dice(k)       # 複数行で書く場合

           if 1 <= k <= 6

               return 1//6

           else

               return 0//1

           end

       end

pmf_dice (generic function with 1 method)


julia> println(pmf_dice(3), " ", pmf_dice(7))

1//6 0//1


繰り返しと内包表記

julia> s = 0

julia> for k in 1:6

           global s += k          # 1から6までを足す

       end

julia> println(s)

21


julia> squares = [k^2 for k in 1:6]     # 内包表記:配列を一行で作る


julia> println(squares)

[1, 4, 9, 16, 25, 36]


乱数

julia> using Random

julia> Random.seed!(1)            # 乱数の種を固定(同じ結果を再現するため)


julia> println(rand())            # 0以上1未満の一様乱数

0.07336635446929285

julia> println(rand(1:6))         # サイコロを1回

3

julia> println(rand(1:6, 10))     # サイコロを10回

[5, 4, 6, 2, 5, 5, 5, 2, 4, 3]

julia> println(rand())

0.0013502779247226426


平均と分散

julia> using Statistics

julia> data = [2, 4, 4, 4, 5, 5, 7, 9]


julia> println(mean(data))                     # 平均

5.0

julia> println(var(data; corrected=false))     # 分散(分母 n)

4.0

julia> println(var(data))                      # 分散(分母 n-1)

4.571428571428571

julia> println(std(data; corrected=false))     # 標準偏差(分母 n)

2.0


グラフの描画

julia> using Plots, PlotsGRBackendFontJaEmoji

julia> default(margin=5Plots.mm)  # 日本語の軸ラベルが切れないように余白を確保

julia> xs = 0:0.1:2π

0.0:0.1:6.2

julia> plot(xs, sin.(xs), label="sin(x)", xlabel="x", ylabel="y")

julia> savefig("setup_sin.png")

julia> display(current())




2026年7月1日水曜日

Juliaのパッケージ

 Juliaのパッケージはとりあえず,以下のものをインストールしておくことにしたので,そのメモです.

ターミナルからJuliaを立ち上げ("]"を入力して)以下のコマンドを実行します.

(@v1.12) pkg> add Plots

(@v1.12) pkg> add Distributions

(@v1.12) pkg> add QuadGK

(@v1.12) pkg> add SpecialFunctions

(@v1.12) pkg> add https://github.com/ujimushi/PlotsGRBackendFontJaEmoji.jl