not は、条件の結果を反対にする演算子です。
true を false に、false を true に変えます。
最初は少し不思議に見えるかもしれませんが、「〜ではない」と読むと分かりやすいです。
たとえば、not soldOut は「売り切れではない」という意味になります。
まずは、シンプルな例を実行してみましょう。
○main
論理型: soldOut
論理型: canBuy
soldOut ← false
canBuy ← not soldOut
print(canBuy)
出力は true です。
soldOut は false です。
つまり、売り切れではありません。
そこに not を付けるので、not soldOut は true になります。
1行ずつ読むと、次のようになります。
soldOut に false を入れるnot soldOut を判定するfalse を反対にするので truecanBuy に true を入れるcanBuy を表示するnot は、比較式にも使えます。
○main
整数型: score
論理型: failed
score ← 55
failed ← not (score ≧ 60)
print(failed)
出力は true です。
score ≧ 60 は、「scoreは60以上ですか?」という条件です。
scoreは55なので、この条件は false です。
そこに not が付くので、結果は反対の true になります。
つまり、「60以上ではない」ので failed が true になります。
not を読むときは、次の順番がおすすめです。
not の中の条件を先に判定するnot (score ≧ 60) をいきなり読むと少し難しく感じます。
でも、先に score ≧ 60 を判定してから反対にすれば大丈夫です。
次は score ← 75 に変えて実行してみてください。
score ≧ 60 が true になり、not で反対になるので、failed は false になります。