1 + 1 +(1, 1) methods(+) 1 + 2 * 3 typeof(1) # 型を調べる typeof(1.0) 1 / 3 # 除算の結果は必ず浮動小数点数 3 \ 1 # 右辺を左辺が割る除算 1 // 3 # 有理数 typeof(1 // 3) names(1 // 3) # 型の構造を調べる (1 + 2im) * (2 - 3im) # 複素数 typeof(1 + 2im) names(1 + 2im) sqrt(-1 + 0im) 2 ^ 8 # べき乗 0.314e1 # 科学技術表記 1_000_000 # アンダースコアによる数値の区切りが可能 e # あらかじめ定義されている数値 π golden typeof(golden) pi \pi x = 10 あ = 10 pi = 3 pi 2pi # *を省略できる 2x^2 + 4x + 1 # シンプルに多項式を記述できる str1 = "This is a string." typeof(str1) str2 = "これは文字列です。" str2[1] typeof(str2) str3 = "\u2200 x \u2203 y s.t. f(y) > x" str4 = "1 + 1 = $(1 + 1)" # インターポレーション print("Hello World!") println("Hello Julia!") dict = ["one"=> 1, "two"=> 2, "three"=> 3] dict = ["one"=> 1, "two"=> 2, "three"=> 3.0] dict["one"] x = [1, 2, 3] # Int64 x[1] # Indexは1から始まる x[0] x[2:3] x[end] [1, 2, "Hello"] # Any [1 2 3] # 1x3 matrix = [1 4 7; 2 5 8; 3 6 9] matrix[1,3] [1 2 3] * [1,2,3] # if /else x = 1 if x == 1 println("One!") elseif x == 2 println("Two!") else println("Not One or Two!") end # for for i = 1:5 println(i) end for str in ["foo","bar","baz"] println(str) end for i = 1:2, j = 3:4 println((i, j)) end square(x) = x * x square(3) f = (x) -> 2x^2 + 4x + 1 f(2) # FizzBuzz function fizzbuzz(x::Int64) # 引数の型を指定している println("This is Int64 fizzbuzz") for i = 1:x if (i % 3 == 0) && (i % 5 == 0) println("FizzBuzz") elseif i % 3 == 0 println("Fizz") elseif i % 5 == 0 println("Buzz") else println(i) end end end # 同じ名前で違う引数型の関数 function fizzbuzz(x::Float64) println("This is Float64 fizzbuzz") for i = 1:x if (i % 3 == 0) && (i % 5 == 0) println("FizzBuzz") elseif i % 3 == 0 println("Fizz") elseif i % 5 == 0 println("Buzz") else println(i) end end end function fizzbuzz(x) println("$(x) is neither Int or Float.") end fizzbuzz(10) fizzbuzz(10.0) fizzbuzz(10 + 10im) fizzbuzz("String")