2019年4月14日日曜日

[Julia] Hello Worldから四則演算まで

前回の投稿でJuliaのインストールに成功したようなので,とりあえず,触ってみた結果のメモです.

REPL(Read-Eval-Print Loop)を立ち上げて,以下のように入力してみました.
まずは,お決まりの"Hello World"のプリントと,型の判定,文字列の連結です.
$ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> println("Hello World")
Hello World

julia> hello_world = "Hello World"
"Hello World"

julia> typeof(hello_world)
String

julia> println("Hello" * "World")
HelloWorld

julia> println("Hello" * " " * "World")
Hello World

Juliaでは,文字列の連結の際にアスタリスク"*"を用います.Pythonでは"+"で連結を行なうのとは異なることに注意が必要です.
Julia language Manual - Strings

四則演算は以下のようになります.
加算(addition, sum)の例($a = 10 + 7$)です.
julia> a = 10 + 7 # Sum. It is not necessary to declare variables. 
17

減算(subtraction, difference)の例($b = 10 - 7$)です.
julia> b = 10 - 7 # Diff
3

乗算(multiplication, product)の例($c = 10 \times 7$)です.
julia> c = 10 * 7 # Product
70

除算(division, quotient)の例($d = 10 \div 7$)です.
julia> d = 10 / 7 # Quotient
1.4285714285714286

除算では,Julia特有の機能があります.
一般的な除算は,以下のように記載します.
julia> 4 / 5 # General description
0.8

Juliaでは除算記号をバックスラッシュ" \ "にすることで,逆の計算になります.
julia> d2 = 7 \ 10
1.4285714285714286

julia> d3 = 10 \ 7
0.7

julia> d == d2

true


べき乗(power)の例($e = 10 ^ 7$)です.
julia> e = 10 ^ 7 # Power
10000000

剰余(remainder, modulus)の例($f = 10 \bmod 7$)です.
julia> f = 10 % 7 # Modulus
3


整数除算の例です.
julia> g = div(5, 2) # The result of div () is an integer
2

julia> g2 = 5 ÷ 2
2

julia> g == g2
true

比較演算子は以下のようになります.
julia> 1 < 2
true

julia> 1 > 2
false

julia> 1 == 1
true

julia> 1 == 2
false

julia> 1 != 2
true

julia> 1 < 2 < 3 # Comparison operators can be used together as a <b <c
true

julia> 1 > 2 < 3
false

代入演算子は以下のようになります.
julia> j = 10
10

julia> j += 10
20

julia> j -= 1
19

julia> j *= 2
38

julia> j /= 2
19.0

Juliaでは,数式の記載に関して,他の言語とは異なる記載が可能になっています.
これまでの例(a, b, ...g, j)でもそうだったように,変数の宣言は特に必要ありません.
julia> x = 5 
5

数字と変数の乗算に関しては,以下のように書くことが可能です.
julia> 4x # 4 * x
20

一般的な記載でも同じ結果が得られます.
julia> 4 * x
20
この"*"を省略できるのは便利なように思いますが,慣れの問題からプログラムが見にくくなるのと,以下の変数同士の乗算の際と混乱してしまうように思うので,現段階では " 4 * x "という一般的な記載にしようかなと思っています.

変数同士の乗算では,"*"を省略することができません.まずは新たな変数を設定して"*"を省略した変数同士の乗算を行ってみると...
julia> y = 4
4

julia> xy # For multiplication between variables, use *.
ERROR: UndefVarError: xy not defined
エラーが発生します....

一般的な記載にすれば,計算できます.
julia> x * y # For multiplication between variables, use *.
20

なお,REPLではあまり使用しないと思われますが,複数行のコメントを書くときは,以下のように文頭を"#="で括り,文末を"=#"で閉じます.
julia> #=
       When writing multiple lines of comments, 
       enclose the beginning of the sentence with "# =" 
       and close the end of the sentence with "= #".
       =#

REPLから抜ける時には,"control + d" で抜けることができます(マニュアルには"quit()"と入力しても良いと書いてありましたが,macOSではエラーが出てしまいます.または,exit()と入力するとREPLが終了します)
Julia language Manual - Numbers
Julia language Manual - Mathematics

なお,上記の例のJupyter Notebookファイルは,GitHubJulia_Beginner_01というファイルで見ることができます.

0 件のコメント :

コメントを投稿