Объясните ошибки в следующих записях на языке Pascal. 1) (1 not 0)=1

2) abs(not(false))

3) x= false+not x +and x

4) d and d not b * b (переменные b и d имеют тип boolean)

almikhaylova almikhaylova    2   08.11.2021 09:49    301

Ответы
иоапгрдгоп иоапгрдгоп  29.12.2023 16:50
1) В данной записи есть несколько ошибок. Первая ошибка заключается в том, что оператор "not" не может применяться к числам, он используется только для операций с булевыми значениями. В данном случае, оператор "not" пытается примениться к числу 0, что является недопустимым. Кроме того, запись должна быть оформлена как логическое выражение и должна содержать оператор сравнения, например, оператор "=". В данном случае, выражение может быть исправлено следующим образом:

(1 <> 0)

2) В данной записи есть две ошибки. Первая ошибка заключается в том, что оператор "not" не может использоваться напрямую с логическими операторами, такими как "and" или "or". В данном случае, оператор "not" применяется к значению "false", что недопустимо. Вторая ошибка заключается в том, что функция "abs" используется для работы с числами, а не для работы с булевыми значениями. Верная запись может выглядеть следующим образом:

abs(ordinal(not false))

3) В данной записи есть несколько ошибок. Первая ошибка заключается в том, что операторы "not" и "and" используются неправильно. Оператор "not" должен применяться к конкретному значению, а не к переменной. Оператор "and" также требует два значения, между которыми он будет выполнять операцию. Исправленная запись может быть следующей:

x := false or not x or x

4) В данной записи есть ошибка в размещении оператора "not". Оператор "not" должен быть расположен перед переменной, к которой будет применяться операция отрицания. В этом случае, запись может быть исправлена следующим образом:

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