Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ReportLab3TPR.docx
Скачиваний:
29
Добавлен:
13.08.2019
Размер:
254.09 Кб
Скачать

Текст головної функції програми

using System;

namespace Lab3

{

class Program

{

static void Main()

{

MetrizedRelation p, q;

Console.WriteLine("Enter P:");

p = new MetrizedRelation();

p.Get();

Console.WriteLine("Basic properties:");

Lab2.Program.ShowPropertiesAndKinds(p);

Console.WriteLine("Metrized properties:");

Console.WriteLine("Consistensy: {0}", p.IsConsistencied() ? "Yes" : "No");

Console.WriteLine("Aditively: {0}", p.IsAditive() ? "Yes" : "No");

Console.WriteLine("Multiplicatively: {0}", p.IsMultiplicive() ? "Yes" : "No");

Console.WriteLine("Transitive multiplicatively: {0}", p.IsMultiplicievlyTransitive() ? "Yes" : "No");

Console.WriteLine("Transitive aditively: {0}", p.IsAditivelyTransitive() ? "Yes" : "No");

Console.WriteLine();

Console.WriteLine("Enter Q:");

q = new MetrizedRelation();

q.Get();

Lab2.Program.ShowPropertiesAndKinds(p);

Console.WriteLine("Metrized properties:");

Console.WriteLine("Consistensy: {0}", p.IsConsistencied() ? "Yes" : "No");

Console.WriteLine("Aditively: {0}", p.IsAditive() ? "Yes" : "No");

Console.WriteLine("Multiplicatively: {0}", p.IsMultiplicive() ? "Yes" : "No");

Console.WriteLine("Transitive multiplicatively: {0}", p.IsMultiplicievlyTransitive() ? "Yes" : "No");

Console.WriteLine("Transitive aditively: {0}", p.IsAditivelyTransitive() ? "Yes" : "No");

Console.WriteLine("Basic operations:");

ShowBasicOperations(p, q);

Console.ReadLine();

}

private static void ShowBasicOperations(MetrizedRelation a, MetrizedRelation b)

{

Console.WriteLine("Union:");

a.Union(b).Show();

Console.ReadLine();

Console.WriteLine("Intersection:");

a.Intersection(b).Show();

Console.ReadLine();

Console.WriteLine("Distriction:");

a.Distinction(b).Show();

Console.ReadLine();

Console.WriteLine("Complemention of P:");

a.Complemention().Show();

Console.ReadLine();

Console.WriteLine("Complemention: of Q:");

a.Complemention().Show();

Console.ReadLine();

Console.WriteLine("P-1:");

a.Reverse().Show();

Console.ReadLine();

Console.WriteLine("Q-1:");

b.Reverse().Show();

Console.ReadLine();

Console.WriteLine("Composition:");

a.Compose(b).Show();

Console.ReadLine();

}

}

}

Результати виконання програми

Рис. 1. Властивості та типи відношення P

Рис. 2. Властивості та типи відношення Q

Рис. 3. Основні операції з відношеннями P та Q

Рис. 4. Властивості та типи відношення P1

Рис. 5. Властивості та типи відношення Q1

Рис. 6. Основні операції з відношеннями P1 та Q1

Висновок: При роботі з метричними відношення слід не забувати в залежності від типу відношення застосовувати ту, чи іншу алгебру при виконанні операцій. Зазвичай це забезпечує збереження властивостей відношень, та не завжди.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]