Operators and Expressions

+ - * / (real division), div (integer division), mod not, and, or, xor (short-circuit evaluation is the default with {$B-}) not and or xor shl shr (on integers) + (concatenation)

+ (union), - (difference), * (intersection), in (membership), <=/>= (subset/superset)

@ (address), ^ (dereference), +/- (pointer arithmetic with {$POINTERMATH ON}) is (type check), as (checked cast)

is not, not in, ternary if Cond then A else B expression (verify for your version)

⚠️ Operator precedence: and/or bind more tightly than comparisons in Pascal. Always parenthesize: if (A > 0) and (B > 0) then.

*, /, div, mod, and, shl, shr, as +, -, or, xor

=, <>, <, >, <=, >=, in, is

var
  X: Integer;
  R: Double;
begin
  X := 17 div 5;          // 3
  X := 17 mod 5;          // 2
  R := 17 / 5;            // 3.4
  if (X > 0) and (R < 10) then Writeln('both');   // parentheses required around comparisons!
  X := X shl 2;
  // Delphi 13+: var S := if X > 0 then 'positive' else 'non-positive';
end;