Почему пишет, что операция '=' не применима к типу boolean в программе? ошибка здесь: if ((x=1) or (y=1)) then вся программа: program pr1; function _xor (x, y: boolean): boolean; begin if ((x=1) or (y=1)) then _xor: =1 else _xor: =0; end; begin readln (x, y); writeln (_xor(x, y)); end.

vika22888535 vika22888535    2   27.09.2019 02:00    0

Ответы
shaihiev shaihiev  27.08.2020 07:58

Если Вы хотите вместо логических значений True и False использовать 1 и 0, то можно сделать так:

program pr1;

function _Xor (x, y:byte): byte;

begin

if x+y=1 then

_Xor:=1

else

_Xor:=0;

end;

var x,y: byte;

begin

readln (x, y);

writeln (_Xor(x, y));

end.


Пример:

1 0

1

ПОКАЗАТЬ ОТВЕТЫ
Аня98788 Аня98788  27.08.2020 07:58

Именно потому и пишет, что операция '=' не применима к типу boolean. Переменные этого типа могут принимать значения True и False, и как можно сравнивать их с единицей?

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика