“Воронежская государственная технологическая академия”
Кафедра информационных технологий,
Моделирования и управления
ДИСКРЕТНАЯ МАТЕМАТИКА
Методические указания к лабораторным занятиям
по дисциплине "Математика",
раздел "Дискретная математика"
Для бакалавров,
Обучающихся по направлениям
230400 – "Информационные системы и технологии",
230700 – "Прикладная информацика"
Дневной и сокращенной формы обучения
Лабораторная работа №1.
СПОСОБЫ ЗАДАНИЯ И СВОЙСТВА БИНАРНЫХ ОТНОШЕНИЙ
Задание. Написать программу, которая строит матрицу бинарного отношения R варианта, определенного на множестве X и выводит её на печать. По построенной матрице:
a) построить срезы бинарного отношения для элементов, заданных в варианте;
b) проверить выполнение либо нарушение свойств бинарного отношения, заданных в варианте.
Построение среза бинарного отношения по элементу 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.
Варианты заданий
1.
a) нижние срезы четных элементов;
b) антисимметричность и слабая полнота.
2.
a) верхние срезы элементов, номера которых четны;
b) асимметричность и полнота.
3.
a) нижние срезы элементов, номера которых нечетны;
b) антирефлексивность и негатранзитивность.
4.
a) верхние срезы нечетных элементов;
b) рефлексивность и транзитивность.
5.
a) нижние срезы элементов, кратных 3;
b) симметричность и полнота.
6.
a) верхние срезы элементов, номера которых являются удвоенными четными;
b) слабая полнота и транзитивность.
7.
a) нижние срезы элементов, номера которых кратны 3;
b) антисимметричность и негатранзитивность.
8.
a) верхние срезы элементов, которые являются удвоенными четными;
b) асимметричность, слабая полнота.
9.
a) нижние срезы элементов, не превышающих 10;
b) полнота, антисимметричность.
10.
a) верхние срезы элементов, номера которых являются удвоенными нечетными;
b) симметричность, рефлексивность, антирефлексивность.
11.
a) нижние срезы элементов, для которых i+1 кратно 3;
b) антисимметричность и слабая полнота.
12.
a) верхние срезы элементов, которые являются удвоенными нечетными;
b) асимметричность и полнота.
13.
a) нижние срезы элементов, не меньших 10;
b) антирефлексивность и негатранзитивность.
14.
a) верхние срезы элементов, меньших ;
b) рефлексивность и транзитивность.
15.
a) нижние срезы элементов, для которых i+2 кратно 3;
b) симметричность и полнота.
16.
a) верхние срезы четных элементов;
b) слабая полнота и транзитивность.
17.
a) нижние срезы элементов, номера которых четны;
b) антисимметричность и негатранзитивность
18.
a) верхние срезы элементов, номера которых нечетны;
b) асимметричность, слабая полнота.
19.
a) нижние срезы нечетных элементов;
b) полнота, антисимметричность.
20.
a) верхние срезы элементов, кратных 3;
b) симметричность, рефлексивность, антирефлексивность.
21.
a) нижние срезы элементов, номера которых являются удвоенными четными;
b) антисимметричность и слабая полнота.
22.
a) верхние срезы элементов, номера которых кратны 3;
b) асимметричность и полнота.
23.
a) нижние срезы элементов, которые являются удвоенными четными;
b) антирефлексивность и негатранзитивность.
24.
a) верхние срезы элементов, не превышающих 10;
b) рефлексивность и транзитивность.
25.
a) нижние срезы элементов, номера которых являются удвоенными нечетными ;
b) симметричность и полнота.
26.
a) верхние срезы элементов, для которых i+1 кратно 3;
b) слабая полнота и транзитивность.
27.
a) нижние срезы элементов, которые являются удвоенными нечетными;
b) антисимметричность и негатранзитивность
28.
a) верхние срезы элементов, не меньших 10;
b) асимметричность, слабая полнота.
29.
a) нижние срезы элементов, больших ;
b) полнота, антисимметричность.
30.
a) верхние срезы элементов, для которых i+2 кратно 3;
b) симметричность, рефлексивность, антирефлексивность.