Построение логических функций по таблице истинности — КиберПедия 

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Построение логических функций по таблице истинности

2017-11-16 2359
Построение логических функций по таблице истинности 4.50 из 5.00 4 оценки
Заказать работу

Логическая функция - это функция, в которой переменные принимают только два значения: логическая единица или логический ноль. Истинность или ложность сложных суждений представляет собой функцию истинности или ложности простых. Эту функцию называют булевой функцией суждений f (a, b).

Любая логическая функция может быть задана с помощью таблицы истинности, в левой части которой записывается набор аргументов, а в правой части - соответствующие значения логической функции. При построении таблицы истинности необходимо учитывать порядок выполнения логических операций.

Правила построения логической функции по ее таблице истинности:

1. Выделить в таблице истинности те строки, в которых значение функции равно 1.

2. Выписать искомую формулу в виде дизъюнкции нескольких логических элементов. Число этих элементов равно числу выделенных строк.

3. Каждый логический элемент в этой дизъюнкции записать в виде конъюнкции аргументов функции.

4. Если значение какого-либо аргумента функции в соответствующей строке таблице равно 0, то этот аргумент взять с отрицанием.

Пример задания

Пусть дана таблица истинности для некоторой логической функции Z(X,Y):

X Y Z
     
     
     
     

Составить логическую функцию для заданной таблицы истинности.

1. В первой и третьей строках таблицы истинности значение функции равно 1.

2. Так как строки две, получаем дизъюнкцию двух элементов: ()V().

3. Каждый логический элемент в этой дизъюнкции запишим в виде конъюнкции аргументов функции X и Y: (X & Y) V (X & Y).

4. Берем аргумент с отрицанием если его значение в соответствующей строке таблицы равно 0 и получаем искомую функцию:
Ответ: Z (X, Y) =(X & Y) V (X & Y).

Правильный ответ – 4 балла.

Решение, поясняющее правильный ответ – 6 баллов.

 

Методические указания к выполнению заданий 3-6

 

При выполнении заданий студент должен выбрать правильный ответ из предложенных вариантов или указать свой ответ, если вариантов не предложено. Необходимо аргументировано обосновать свой ответ, привести примеры, иллюстрирующие ответ.

Пример задания

Какое соответствие должно быть между списками формальных и фактических параметров подпрограмм?

1. по именам переменных

2. по количеству элементов списка

3. по количеству и типам параметров

4. по значениям переменных

 

Ответ: правильным является вариант 3 (1 балл)

Обоснование выбранного варианта

Параметры (переменные), определяемые при описании процедуры или функции, называются формальными. Параметры (переменные), задаваемые при вызове подпрограммы, называются фактическими. Замена формальных параметров фактическими делается так: на место первого формального параметра подставляется первый фактический параметр, на место второго формального параметра - второй фактический и т.д. Поэтому количество и типы формальных и фактических параметров должны совпадать.

Количество баллов за обоснование – 2.

Пример, иллюстрирующий ответ

Например, при описании функции

FUNCNION REL(I:INTEGER, Y, Z: REAL): INTEGER; ……

Формальные параметры I-целого типа; Y, Z – вещественного типа.

При вызове функции

S:=REL(5, 3*SIN(4), 2*PI);

формальный параметрI заменяется на константу целого типа 5 (фактический параметр), Y – на выражение вещественного типа 3*SIN(4), Z заменяется на выражение вещественного типа 2*PI.

Количество баллов за пример –2.

Суммарный балл за задание -5.

3.5 Методические указания к выполнению задания 7

Пример задания

 
 

Дана блок-схема (рис.1). Каково будет значение переменной С после выполнения алгоритма?

Рис. 1. Блок схема алгоритма

 

За указания правильного значения без пояснения – 3 балла.

Составление пояснений к работе алгоритма в виде таблицы трассировки (см. таблицу 3) оценивается в 7 баллов. Cуммарный балл 10.

 

Таблица 3

Трассировка выполнения алгоритма

 

№ п/п Значения переменных
a b c i n
           
           
           
           
        1<=5? Да  
           
           
           
        2<=5? Да  
           
           
           
        3<=5? Да  
           
           
           
        4<=5? Да  
           
           
           
        5<=5? Да  
           
           
           
        6<=5? Нет  

 

Ответ: с=21

 

3.6 Методические указания к выполнению задания 8

 

Пример1 выполнения задания 8

Определить количество тех членов последовательности, которые нечетны и отрицательны. Найти сумму членов последовательности, кратных 5.

Выполнение задания:

1. Разработаем алгоритм решения задачи (рис. 2).

Рис.2. Блок-схема алгоритма к примеру 1

Оценка за правильную блок-схему алгоритма ­– 7 баллов.

 

2. Разработаем программу.

 

program zadacha_8_1;

uses crt;

const

m=500; {максимальное значение n};

var

a: array [1..m] of integer; {массив, состоящий из членов последовательности};

n: word; {число членов последовательности}

kol: word; {количество нечетных и отрицательных членов последовательности}

sum: integer; {сумма членов последовательности, кратных 5}

i: word; {счетчик цикла}

begin

writeln (‘Введите исходные данные:’);

write (‘n=’); readln (n);

for i:=1 to n do

begin

write (‘a[‘,i:3,’]=’); readln (a[i]);

end;

kol:=0; sum:=0;

for i:=1 to n do

begin

if odd(a[i]) and (a[i]<0) then kol:= kol +1;

if a[i] mod 5=0 then sum:= sum +a[i];

end;

writeln (‘результаты расчета:’);

writeln (‘количество нечетных и отрицательных ’);

writeln (‘членов последовательности равно’,kol:4);

writeln (‘сумма членов последовательности, кратных 5, равна’, sum:4);’);

readln;

end.

 

Оценка за разработанную программу – 9 баллов.

 

3. Приведем тестовый пример

Введите исходные данные

n = 10

a[ 1] = 1

a[ 2] = 5

a[ 3] = -3

a[ 4] = -4

a[ 5] = 0

a[ 6] = 6

a[ 7] = -25

a[ 8] = -100

a[ 9] = 9

a[10] = -7

 

Результаты расчета:

Количество нечетных и отрицательных членов последовательности равно 3

Сумма членов последовательности, кратных 5, равна –120

 

Оценка за тестовый пример – 4 балла.

Суммарный балл за выполнение задания 8 – 20 баллов.

Пример 2 выполнения задания 8.

Найти разности наибольших и наименьших элементов каждой строки матрицы А.

 

1. Разработаем алгоритм решения задачи (рис. 3).

 

Введем обозначения:

m – количество строк матрицы А;

n – количество столбцов матрицы А;

i – номер текущей строки матрицы А;

j – номер текущего столбца матрицы А;

min – наименьший элемент в текущей строке матрицы А;

max – наибольший элемент в текущей строке матрицы А;

razn – разность наибольшего и наименьшего элементов текущей строки матрицы А.

 

 

Рис.3. Блок-схема к примеру 2

 

Оценка за правильную блок-схему алгоритма ­– 7 баллов.

2. Разработаем программу.

Program zadacha_8_2;

const

p=100;

var a:array [1..p,1..p] of integer; {исходная матрица}

n,m:integer;{размеры матрицы}

i, j:integer;{счетчики циклов}

max:integer;{максимальный элемент строки}

min:integer;{минимальный элемент строки}

razn:integer;{разность максимального и минимального элементов}

begin

write (‘m=’); readln (m);

write (‘n=’); readln (n);

writeln (‘Матрица’);

for i:=1 to m do

begin

for j:=1 to n do read (a[i,j]);

end;

writeln (‘Разность наибольшего и наименьшего элементов’);

for i:=1 to m do

begin

min:=a[i,1];

max:=a[i,1];

for j:=1 to n do

begin

if a[i,j]<min then min:=a[i,j];

if a[i,j]>max then max:=a[i,j];

end;

razn:=max-min;

writeln(‘для ‘,i:3,’-й строки равна ‘, razn:5);

end;

readln;

end.

 

Оценка за разработанную программу – 9 баллов.

 

3. Приведем тестовый пример

 

m = 4

n = 7

Матрица А:

    -3       -26
      -1      
-8            
             

Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.054 с.