Lua if and else branches choose one of two paths.

two branches The condition controls which assignment runs before the shared output.

If Else Branches

score
if_else_branches.lua
Replay: real traced execution (multi-file project)
local score = 82
local result = ""

if score >= 80 then
  result = "pass"
else
  result = "review"
end

print("score=" .. score)
print("result=" .. result)
local score = 65
local result = ""

if score >= 80 then
  result = "pass"
else
  result = "review"
end

print("score=" .. score)
print("result=" .. result)
local score = 95
local result = ""

if score >= 80 then
  result = "pass"
else
  result = "review"
end

print("score=" .. score)
print("result=" .. result)
  1. score ← 82, result ← (empty)

    1local score→ 82 = 82 --@score=65, 952local result→ (empty) = ""
  2. result ← pass

    4if score82 >= 80 then5  result→ pass = "pass"6else
  3. print("score=" .. score)

    10print("score=" .. score82)11print("result=" .. resultpass)
    outputscore=82
    result=pass
  1. score ← 65, result ← (empty)

    1local score→ 65 = 652local result→ (empty) = ""
  2. result ← review

    5  result = "pass"6else7  result→ review = "review"8end
  3. print("score=" .. score)

    10print("score=" .. score65)11print("result=" .. resultreview)
    outputscore=65
    result=review
  1. score ← 95, result ← (empty)

    1local score→ 95 = 952local result→ (empty) = ""
  2. result ← pass

    4if score95 >= 80 then5  result→ pass = "pass"6else
  3. print("score=" .. score)

    10print("score=" .. score95)11print("result=" .. resultpass)
    outputscore=95
    result=pass

Choose Pass or Review

  1. score starts at 82.
  2. The check score >= 80 is true.
  3. The if branch runs.
  4. result becomes pass. | Score | Branch | Result | | --- | --- | --- | | 65 | else | review | | 82 | if | pass | | 95 | if | pass |

Exercise: if_else_branches.lua

Use if and else to print pass for scores at least 80 and review otherwise