Ejemplo n.º 1
0
        private void _view_SolveDifference(object sender, EventArgs e)
        {
            if (!_view.CheckFirstMultitude || !_view.CheckSecondMultitude)
            {
                _messageService.ShowExclamation("Одно из множеств не заполнено");
                return;
            }
            else
            {
                Multitude FirstMultitude  = new Multitude();
                Multitude SecondMultitude = new Multitude();

                for (int i = 0; i < _view.Content.Length; i++)
                {
                    FirstMultitude.Elements.Add(_view.Content[i]);
                }
                for (int i = 0; i < _view.Content_2.Length; i++)
                {
                    SecondMultitude.Elements.Add(_view.Content_2[i]);
                }

                FirstMultitude.Elements.RemoveAll(x => SecondMultitude.Elements.Contains(x));

                for (int i = 0; i < FirstMultitude.Elements.Count; i++)
                {
                    _view.ResultContent += FirstMultitude.Elements[i] + ',';
                }
                _view.ResultContent = '(' + _view.ResultContent.Substring(0, _view.ResultContent.Length - 1) + ')';
            }
        }
Ejemplo n.º 2
0
        private void _view_SolveAssociation(object sender, EventArgs e)
        {
            if (!_view.CheckFirstMultitude || !_view.CheckSecondMultitude)
            {
                _messageService.ShowExclamation("Одно из множеств не заполнено");
                return;
            }
            else
            {
                Multitude FirstMultitude  = new Multitude();
                Multitude SecondMultitude = new Multitude();

                for (int i = 0; i < _view.Content.Length; i++)
                {
                    FirstMultitude.Elements.Add(_view.Content[i]);
                }
                for (int i = 0; i < _view.Content_2.Length; i++)
                {
                    SecondMultitude.Elements.Add(_view.Content_2[i]);
                }
                List <string> contentChanged = new List <string>();
                for (int i = 0; i < _view.Content.Length; i++)
                {
                    contentChanged.Add(FirstMultitude.Elements[i]);
                }
                for (int i = 0; i < _view.Content_2.Length; i++)
                {
                    contentChanged.Add(SecondMultitude.Elements[i]);
                }
                int u = 1;
                while (u < contentChanged.Count)
                {
                    int  j      = 0;
                    bool remove = false;
                    while (j < u && !remove)
                    {
                        if (contentChanged[u].Equals(contentChanged[j]))
                        {
                            remove = true;
                        }
                        j++;
                    }
                    if (remove)
                    {
                        contentChanged.RemoveAt(u);
                    }
                    else
                    {
                        u++;
                    }
                }
                for (int i = 0; i < contentChanged.Count; i++)
                {
                    _view.ResultContent += contentChanged[i] + ',';
                }
                _view.ResultContent = '(' + _view.ResultContent.Substring(0, _view.ResultContent.Length - 1) + ')';
            }
        }
Ejemplo n.º 3
0
        private void _view_SolveAddition(object sender, EventArgs e)
        {
            if (_view.CheckUniversal)
            {
                Multitude FirstMultitude = new Multitude();
                Multitude Universal      = new Multitude();

                for (int i = 0; i < _view.Content.Length; i++)
                {
                    FirstMultitude.Elements.Add(_view.Content[i]);
                }
                for (int i = 0; i < _view.Content_3.Length; i++)
                {
                    Universal.Elements.Add(_view.Content_3[i]);
                }

                int count = 0;
                if (Universal.Elements.Count > FirstMultitude.Elements.Count)
                {
                    for (int i = 0; i < FirstMultitude.Elements.Count; i++)
                    {
                        if (Universal.Elements[i] != FirstMultitude.Elements[i])
                        {
                            count++;
                            break;
                        }
                    }
                }
                else
                {
                    _messageService.ShowExclamation("Universal не является U для данного множества");
                    return;
                }

                if (count > 0)
                {
                    _messageService.ShowExclamation("U не содержит некоторые элементы принадлежашие множеству");
                    return;
                }


                List <string> contentCHanged = new List <string>();
                Universal.Elements.RemoveAll(x => FirstMultitude.Elements.Contains(x));

                for (int i = 0; i < Universal.Elements.Count; i++)
                {
                    _view.ResultContent += Universal.Elements[i] + ',';
                }
                _view.ResultContent = '(' + _view.ResultContent.Substring(0, _view.ResultContent.Length - 1) + ')';
            }
            else
            {
                _messageService.ShowExclamation("Укажите Universal");
                return;
            }
        }
Ejemplo n.º 4
0
        void _view_SolveCrossing(object sender, EventArgs e)
        {
            if (!_view.CheckFirstMultitude || !_view.CheckSecondMultitude)
            {
                _messageService.ShowExclamation("Одно из множеств не заполнено");
                return;
            }
            else
            {
                Multitude FirtstMultitude = new Multitude();
                Multitude SecondMultitude = new Multitude();

                string   contentChanged = _view.ResultContent;
                string[] content        = _view.Content;
                for (int i = 0; i < content.Length; i++)
                {
                    FirtstMultitude.Elements.Add(content[i]);
                }
                for (int i = 0; i < _view.Content_2.Length; i++)
                {
                    SecondMultitude.Elements.Add(_view.Content_2[i]);
                }

                for (int i = 0; i < FirtstMultitude.Elements.Count; i++)
                {
                    for (int j = 0; j < SecondMultitude.Elements.Count; j++)
                    {
                        if (FirtstMultitude.Elements[i] == SecondMultitude.Elements[j])
                        {
                            contentChanged += FirtstMultitude.Elements[i] + ',';
                        }
                    }
                }
                _view.ResultContent = contentChanged;
                _view.ResultContent = '(' + _view.ResultContent.Substring(0, _view.ResultContent.Length - 1) + ')';
            }
        }
Ejemplo n.º 5
0
        private void _view_SolveCartesianWork(object sender, EventArgs e)
        {
            if (!_view.CheckFirstMultitude || !_view.CheckSecondMultitude)
            {
                _messageService.ShowExclamation("Одно из множеств не заполнено");
                return;
            }
            else
            {
                Multitude FirstMultitude  = new Multitude();
                Multitude SecondMultitude = new Multitude();

                for (int i = 0; i < _view.Content.Length; i++)
                {
                    FirstMultitude.Elements.Add(_view.Content[i]);
                }
                for (int i = 0; i < _view.Content_2.Length; i++)
                {
                    SecondMultitude.Elements.Add(_view.Content_2[i]);
                }

                List <string> contentChanged = new List <string>();
                for (int i = 0; i < FirstMultitude.Elements.Count; i++)
                {
                    for (int j = 0; j < FirstMultitude.Elements.Count; j++)
                    {
                        contentChanged.Add('(' + FirstMultitude.Elements[i] + ',' + SecondMultitude.Elements[j] + ')');
                    }
                }

                for (int i = 0; i < contentChanged.Count; i++)
                {
                    _view.ResultContent += contentChanged[i] + ',';
                }
                _view.ResultContent = '{' + _view.ResultContent.Substring(0, _view.ResultContent.Length - 1) + '}';
            }
        }