論理式
-
コンパイラは、
10 < valueをすでに式として認識しているため、その後にコンマが続くことを期待して、writelnの有効な引数として受け入れる。式全体を括弧で囲んでも、同じ式の後ろに閉じ括弧が続くため、これは機能しない。 - 式を
(10 < value) < 20とグループ化すると、コンパイルエラーは発生しない。この場合、まず10 < valueが評価され、その結果が< 20で使用されるからだ。10 < valueのような論理式の値は、falseまたはtrueのいずれかになることはわかっている。falseおよびtrueは、それぞれ0および1として整数式の一部となる。(自動型変換については、後の章で説明する。)その結果、式全体は、0 < 20または1 < 20のいずれかと同等になり、どちらもtrueと評価される。 - "下限値より大きく、上限値より小さい"という式は、次のようにコード化できる。
- "全員に自転車がある"は、
personCount <= bicycleCountまたはbicycleCount >= personCountと記述できる。論理式の残りの部分は、演習問題からDに直接変換できる。2つの主な条件を分離して読みやすくするために、
||演算子の配置に注意。