Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Запись логических выражений
Определение двух аргументных часто используемых логических операций – ике аргументлы еш кулланылган мантыйк гамәлләр.
Логические операции языка ПАСКАЛЬ.
Одноаргументные выражения и их таблицы истинности
Отсюда следует, что A=AVA=A&A=A&1=AV0=┐┐А=AÅ0 ┐A= A→┐A= A→0= AÅ1 1=AV1=AVùA= A→1 0=A&ùA=A&0. Двух аргументные выражения и их таблицы истинности
Трех аргументные выражения и их таблицы истинности
Основные законы алгебры логики
ДНФ. Построение совершенной дизъюнктивно нормальной формы по таблице истинности (СДНФ).
Проведем преобразования СДНФ данной функции F(A,B,C). A&B&C V A&B&C V A&B&C = A&B&C V A&B&C V A&B&C V A&B&C = (AVA)&B&C V A&B&(C V C) = 1&B&C V A&B&1 = B&C V A&B = B&(C V A) F(A,B,C)= B&(C V A) Примеры: запись логических выражений на языке ПАСКАЛЬ А&В —® А and В ù А V B —® not А or В A Å B —® A xor B Условия могут комбинироваться. 1<a<3 выполняется, когда а >1, но <3. Упражнения. 1. Трех аргументная функция F(a,b,c) имеет следующий вид
2. Написать таблицу истинности и контактную схему для заштрихованной области, ДНФ–формулу, минимизировать и нарисовать контактную схему. а) б) в) г) д) 3. Написать логическую формулу, принимающей значение true для точек, принадлежащих заштрихованной области и false для точек, не принадлежащих заштрихованной области. 4. Написать логическую формулу, принимающуюзначение true для точек, принадлежащих заштрихованной области, и значение false для точек, не принадлежащих заштрихованной области. а) б)
в) г) д) 5. Написать следующие выражения на языке ПАСКАЛЬ и построить их таблицы истинности: А) ùA & B Б)A & ùB В) ùA V ùB Г)A V ùB Д) ù (A & B) Е) ù (ùA & ùB) Ж) (A & B) V (ùA & ùB) З) ù (A & B) V C & ù B И) ù (A & B) V ù C & ù B К) (ù A & B) V (A & ù B) Л) В Å B Å B М) A Å B Å B Н) A ® B ® B О) ùA ® (ùB & C V (A ® B)) П) ù(A ® ùB) & C V (A ® B) Р) ù(A ® ù(B & C) V (A ® B) 6. Какие из приведенных записей ошибочны и почему а) NOT A; б) NOT_ABC; в) NOT NOT B; г) C NOT V; д) A NOT OR B; е) NOT A XOR B; ж) A XOR B ANDC. 7. По заданным булевским выражениям на языке ПАСКАЛЬ написать соответствующие выражения математической логики: А) not not A and (B xor C) Б)A or true and ùB В) not A and not B or A and B Г)not (A or not (B or not C)) 8. Чему равно значение выражения А) (A<B) AND (C<=D) AND not E, где A=2, B=3, C=5, D=4, E=FALSE Б) A DIV TRUNC(B/(2*C)), если A=9, B=26, C=3 В) (X*9)-A, где X=3.2, A=8.7 Г) B OR FALSE, где B=TRUE Д) X MOD 10 + 1, если X=11 9. С помощью эквивалентных преобразований показать, что 10. Какие из следущих выражений равны между собой? А) A|A; A|A|A; A|A|A|A; A|A|A|A|A; A|B; B|A. Б) A|B|C; A|(B|C); A|A|B|B|C|C. В) (A ® B) ® С; A ® (B ® С); A ® B; B ® A; 11. Верны ли следующие равенства? А) (A&ùB V C)&(ùA V B) = B V A ; Б) (A V B V C)&(ùA V B) = B V A 12. Докажите эквивалентность А) A&B V A&С = A&(B V C) ; Б) (A V B)&(A V C) = A V B&C B) (A → B)&(A → C) = A → B&C Г) (A → B) V (A → C) = A → (B V C) 13. Написать следующие выражения на языке ПАСКАЛЬ, которые для точек с координатами (Х,Ү), находящихся в заштрихованной области,[1] принимают значение true, а за пределами принимают значение false.
Г) Д)
Е) Ж)
14. Для заданных множеств А и В написать следующие логическое выражения на языке ПАСКАЛЬ, которое для эелемента Х принимает значение 1, если она находится в заштрихованной области А[2], иначе принимает значение 0. 15. Написать логические выражения, принимающие значение true, когда точка (Х,Ү) находится в заштрихованной на рисунке области
16. Написать логические выражения, принимающие значение true, когда точка (Х,Ү) находится в заштрихованной на рисунке области, где окружность радиуса 1 и кривая соответствует Ү=X2. 1) 2) 3) 4) 17. Записать следующие высказывания в виде логических выражений. А) Если А верно, то В верно; В) Если из истинности А следует истинность В, то и С истинно 18. Записать функцию из трех переменных F(x1,x2,x3), которое принимает значение 1(истина) в следующих случаях: А) Если среди значений аргументов есть значение 0(ложь); Б) Если среди значений аргументов есть значение 1(истина); В) Если среди значений аргументов значение 1(истина) больше; Г) Если среди значений аргументов значение 0(ложь) больше; Д) Если все значения аргументов 0(ложь); Е) Если все значения аргументов 1(истина); 19. Написать логические выражения для следующих таблиц истинности.
20. Написать логические выражения двоичного сумматора на языке ПАСКАЛЬ. C=A+B, где i-тый разряд суммы определяется следующей таблицей
21. Через таблицы истинности определить значения А и В после выполнения следующих трех операторов: A:=АÅB; B:=АÅB; A:=АÅB ? По аналогии с языками программирования Паскаль, С++ можно использовать конструкции похожие на условный оператор или использовать конструкции, используемые только в PYTHON
Для вычисления c=max(a,b) можно применить следующие фрагменты программ: if a>b then c:=a else c:=b; // – на языке Pascal if (a>b) c=a; else c=b; // – на языке С ++ Данная конструкция на языке Python может быть записана следующим образом: if a>b : c=a else : c=b В виде условного выражения можно записать следующим образом: с = (a if a>b else b) Задача 1. Во входной строке записаны три натуральных числа через пробел. Каждое из чисел не превышает 10100. Нужно вывести максимальное целое число. По аналогии с языком Паскаль было бы следующее решение[3]: x,y,z=map(int,input().split() if x>=y and y>=z : print(x) elif y>=z : print(y) else : print( z)
Используя условные выражения можно написать следующую программу: x,y,z=map(int,input().split() print(x if x>=y and y>=z else y if y>=z else z) Используя потоковые функции, можно написать следующую программу: print(max(map(int,input().split()))) Ввод-вывод |
Последнее изменение этой страницы: 2019-03-21; Просмотров: 249; Нарушение авторского права страницы