犬も歩けばエンジニアになる

プログラミングや数学や物理に関する技術メモ

Julia - for/whileループ文のいろいろ

For文の基本

Forループで1から10まで出力する例です。

for i=1:10
    println(i)
end

特に難しい点はありませんね。

リストの要素を一つずつ取り出すinキーワードも便利です。

for i in [1, 2, 3, 4, 5]
    println(i)
end

while文の場合

While文を使う場合、global変数を定義してからループさせる場合が多いです。 1から10まで出力させる例だと以下のようになります。

i = 1
while i<=10
    println(i)
    global i += 1  # globalを付けないとエラー
end

while文内では変数iがglobalであることを明記しないといけないのは忘れがちです。

Juliaでのglobal関数やlocal関数については別記事があるので参考にしてください。

Julia - グローバル変数とローカル変数 - Juliaで学ぶプログラミング(Pythonも使うよ!)

while文とbreak

breakを使ってwhileループから抜け出すこともできます。

while true
    println(i) # ここはglobalなし
    if i >= 5 # ここはglobalなし
        break
    end
    global i += 1 # ここはglobalを付けないとエラー
end

if文やprint関数に渡す時はiにglobalを付ける必要はありませんが、iに新しい値を代入する場合はすでに定義されているglobal関数に値を代入することを明示的にするためglobalが必須です。