Подставим значения в условия и построим логическое выражение:
( 10 < 12 ) ∧ ( 12 < 30 ) ∧ ( 30 mod 12 = 0 )
Если условие выполняется, пишем 1(true), если нет - 0(false):
(1 ∧ 1 ∧ 0) = 0
Второй параметр BoolToStr, отвечает за то, в каком виде будет выведено значение логической переменной. Если второй параметрBoolToStr выбран как False, значит в Edit1.Text будет выведено его значение в численном виде, т.е. 0.
Если бы строка была записана как Edit1.Text := BoolToStr(A,True); то в Edit1.Text было бы выведено значение переменной A в текстовом виде, т.е. False.