Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Reguly
- {
- public enum Zawieranie
- {
- Tak,
- Nie,
- Równe
- }
- public class Regula
- {
- public int decyzja;
- public int support;
- public List<Deskryptor> deskryptory = new List<Deskryptor>();
- public Regula(int[] kombinacja, int[] obiektSystemuDecyzyjnego)
- {
- this.decyzja = obiektSystemuDecyzyjnego.Last();
- foreach (var atrybucior in kombinacja)
- {
- Deskryptor pojedyncznyDeskryptor = new Deskryptor(atrybucior, obiektSystemuDecyzyjnego[atrybucior]);
- this.deskryptory.Add(pojedyncznyDeskryptor);
- }
- }
- public Zawieranie CzyZawiera (Regula regulaZListy)
- {
- Zawieranie decision = Zawieranie.Nie;
- foreach (var jedenDeskryptor in regulaZListy.deskryptory)
- {
- if (this.deskryptory.Where(d => d.atrybut == jedenDeskryptor.atrybut && d.wartosc == jedenDeskryptor.wartosc).Count() < 1)
- {
- decision = Zawieranie.Tak;
- }
- }
- if (regulaZListy.deskryptory.Count == this.deskryptory.Count)
- {
- for (int i = 0; i < regulaZListy.deskryptory.Count; i++)
- {
- if (regulaZListy.deskryptory[i] == this.deskryptory[i])
- {
- return Zawieranie.Równe;
- }
- }
- }
- return decision;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement