ГОУВПО
“Воронежская государственная технологическая академия”
Кафедра информационных технологий,
моделирования и управления
ДИСКРЕТНАЯ МАТЕМАТИКА
Методические указания к лабораторным занятиям
по дисциплине "Математика",
раздел "Дискретная математика"
Для бакалавров,
обучающихся по направлениям
230400 – "Информационные системы и технологии",
230700 – "Прикладная информацика"
дневной и сокращенной формы обучения
Лабораторная работа №1.
СПОСОБЫ ЗАДАНИЯ И СВОЙСТВА БИНАРНЫХ ОТНОШЕНИЙ
Задание. Написать программу, которая строит матрицу бинарного отношенияRварианта, определенного на множествеX и выводит её на печать. По построенной матрице:
построить срезы бинарного отношения для элементов, заданных в варианте;
проверить выполнение либо нарушение свойств бинарного отношения, заданных в варианте.
Построение среза бинарного отношения по элементу x оформить в виде процедуры, проверку свойства бинарного отношения – в виде функции, выдающей логический результат.
X ={2, 3, 5, 6, 7, 10, 12, 13, 14, 17, 18, 20} – для нечетных вариантов,
X ={1, 3, 4, 5, 6, 8, 9, 11, 12, 15, 16, 17, 18} – для четных вариантов.
Методические указания к выполнению работы.
Множество X, на котором задано бинарное отношение, определить как типизированную константу, являющуюся одномерным массивом, количество элементов множества – символьной константой. Построенное бинарное отношение и срезы варианта должны быть сохранены в двумерных массивах. Для возможности передачи массива и матрицы в качестве параметров в процедуру и функции определить соответствующие типы.
В основной программе строится и печатается матрица бинарного отношения (печать матрицы можно оформить в виде процедуры), затем для каждого элемента множества X проверяется условие п. а), если условие выполнено, то вызывается процедура построения соответствующего среза этого элемента.
Параметрами-значениями этой процедуры должны быть номер элемента, для которого строится срез, и количество элементов множества; параметрами-константами – множество, на котором определено бинарное отношение, и матраца бинарного отношения; параметр-переменная – строящийся верхний или нижний срез. Например
procedure v_srez(k,n:byte; const X:mas; const R:matr; var G:matr);
В теле процедуры необходимо проверить k-ую строку (для нижних срезов) илиk-ый столбец (для верхних срезов) матрицы бинарного отношения. Если элемент матрицы равен 1, то в матрицу срезов необходимо записать соответствующий элемент множестваX. Заполнение матрицы срезов выполняется по строкам для любого среза, пропуски элементов в строке не допускаются, поэтому вводится счетчик элементов среза. На печать выводятся только построенные срезы, печать можно выполнять параллельно с заполнением матрицы срезов.
Проверка каждого свойства бинарного отношения выполняется с помощью отдельной функции, выдающей логический результат. Параметрами такой функции являются матрица бинарного отношения и её размер. Например
function refleks(const R:matr; n:byte):boolean;
Так как проверяемое свойство должно быть выполнено для всех элементов или пар элементов или троек элементов, то вначале результату функции присваивается значение true, а затем проверяется нарушение соответствующего свойства. Если условие нарушается хотя бы один раз, то функция принимает значениеfalse.
Варианты заданий
нижние срезы четных элементов;
антисимметричность и слабая полнота.
верхние срезы элементов, номера которых четны;
асимметричность и полнота.
нижние срезы элементов, номера которых нечетны;
антирефлексивность и негатранзитивность.
верхние срезы нечетных элементов;
рефлексивность и транзитивность.
нижние срезы элементов, кратных 3;
симметричность и полнота.
верхние срезы элементов, номера которых являются удвоенными четными;
слабая полнота и транзитивность.
нижние срезы элементов, номера которых кратны 3;
антисимметричность и негатранзитивность.
верхние срезы элементов, которые являются удвоенными четными;
асимметричность, слабая полнота.
нижние срезы элементов, не превышающих 10;
полнота, антисимметричность.
верхние срезы элементов, номера которых являются удвоенными нечетными;
симметричность, рефлексивность, антирефлексивность.
нижние срезы элементов, для которых i+1 кратно 3;
антисимметричность и слабая полнота.
верхние срезы элементов, которые являются удвоенными нечетными;
асимметричность и полнота.
нижние срезы элементов, не меньших 10;
антирефлексивность и негатранзитивность.
верхние срезы элементов, меньших ;
рефлексивность и транзитивность.
нижние срезы элементов, для которых i+2 кратно 3;
симметричность и полнота.
верхние срезы четных элементов;
слабая полнота и транзитивность.
нижние срезы элементов, номера которых четны;
антисимметричность и негатранзитивность
верхние срезы элементов, номера которых нечетны;
асимметричность, слабая полнота.
нижние срезы нечетных элементов;
полнота, антисимметричность.
верхние срезы элементов, кратных 3;
симметричность, рефлексивность, антирефлексивность.
нижние срезы элементов, номера которых являются удвоенными четными;
антисимметричность и слабая полнота.
верхние срезы элементов, номера которых кратны 3;
асимметричность и полнота.
нижние срезы элементов, которые являются удвоенными четными;
антирефлексивность и негатранзитивность.
верхние срезы элементов, не превышающих 10;
рефлексивность и транзитивность.
нижние срезы элементов, номера которых являются удвоенными нечетными ;
симметричность и полнота.
верхние срезы элементов, для которых i+1 кратно 3;
слабая полнота и транзитивность.
нижние срезы элементов, которые являются удвоенными нечетными;
антисимметричность и негатранзитивность
верхние срезы элементов, не меньших 10;
асимметричность, слабая полнота.
нижние срезы элементов, больших ;
полнота, антисимметричность.
верхние срезы элементов, для которых i+2 кратно 3;
симметричность, рефлексивность, антирефлексивность.