Пример #1
0
        /*  Конструктор  на  основе  задачи,  */
        public SimplexMethod1(Task a1, Zadacha f1)
        {
            SimplexTable table;

            a  = new List <List <double> >();
            b  = new List <double>();
            c  = new List <double>();
            m  = a1.b.Count;
            n  = a1.c.Count;
            n1 = n + m;
            List <double> u = new List <double>();

            for (int i = 0; i < m; i++)
            {
                u = new List <double>();
                b.Add(a1.b[i]);
                for (int j = 0; j < n; j++)
                {
                    u.Add(a1.a[i][j]);
                }
                a.Add(u);
            }
            for (int i = 0; i < n; i++)
            {
                c.Add(a1.c[i]);
            }
            z = 0;
            f = f1;
            for (int i = 0; i < m; i++)
            {
                c.Add(0);
                Cb.Add(0);
                basis.Add(n + i);
                for (int j = 0; j < m; j++)
                {
                    a[i].Add((i == j) ? 1 : 0);
                }
            }
            for (int i = 0; i < n1; i++)
            {
                x.Add(0);
                delta.Add(-1 * c[i]);
                name.Add(string.Format("x{0}", i + 1));
            }
            table = new SimplexTable(
                a, b, Cb, name, basis, delta, z);
            steps.Add(table);
            CreateSolution();
        }
Пример #2
0
        public PartialViewResult Modul(Zadacha zadacha)
        {
            modulRep     modulRep = new modulRep();
            Serializable ss       = new Serializable();

            using (Stream inputStream = zadacha.PostedFile.InputStream)
            {
                MemoryStream memoryStream = inputStream as MemoryStream;
                if (memoryStream == null)
                {
                    memoryStream = new MemoryStream();
                    inputStream.CopyTo(memoryStream);
                }
                zadacha.fileUpload = memoryStream.ToArray();
            }

            modulRep.addZadacha(zadacha);
            ss.addXml(zadacha);
            //ss.getObject();
            //return RedirectToAction("modul", "Home");
            return(PartialView("addZadacha"));
        }
Пример #3
0
        public void SaveFile(HttpPostedFileBase fileUpl)
        {
            Zadacha zadacha = new Zadacha();

            //zadacha.PostedFile = fileUpl;
            using (Stream inputStream = fileUpl.InputStream)
            {
                MemoryStream memoryStream = inputStream as MemoryStream;
                if (memoryStream == null)
                {
                    memoryStream = new MemoryStream();
                    inputStream.CopyTo(memoryStream);
                }
                zadacha.fileUpload = memoryStream.ToArray();
            }
            //zadacha.PostedFile = zadacha.fileUpload;
            //if (fileUpl != null && !string.IsNullOrWhiteSpace(fileUpl.FileName))
            //{
            //    ServiceDesk.FileSaveWS.ContentsWebServiceSoapClient myFileWS = new FileSaveWS.ContentsWebServiceSoapClient();
            //    myFileWS.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
            //    byte[] bytes = new byte[fileUpl.ContentLength];
            //    if (bytes.Length > 0)
            //    {
            //        double fileMbSize = ConvertBytesToMegabytes(fileUpl.ContentLength);
            //        if (fileMbSize > 4.0)
            //        {
            //            ModelState.AddModelError("dirFile", "размер файла повышает 4 МБ");
            //            throw new Exception("размер файла повышает 4 МБ");
            //        }
            //        fileUpl.InputStream.Read(bytes, 0, bytes.Length);
            //        fileUrl = myFileWS.UploadFileFromByteNew(bytes, System.IO.Path.GetFileName(fileUpl.FileName), 30, 3, "RegNumberCode", false, "900502301693",
            //            "Altynbekov Baqtiyar ospanuly", "hcsbkkz\\tulepbergenov.b", true);
            //    }
            //}
            //  return fileUrl;
        }
Пример #4
0
        /*  Конструктор  на  основе  задачи,  */
        public SimplexMethodM1(Task a1, Zadacha f1)
        {
            SimplexTableM table;
            double        s = 0;

            a  = new List <List <double> >();
            b  = new List <double>();
            c  = new List <double>();
            m  = a1.b.Count;
            n  = a1.c.Count;
            n1 = n + m;
            List <double> u = new List <double>();

            for (int i = 0; i < m; i++)
            {
                u = new List <double>();
                b.Add(a1.b[i]);
                for (int j = 0; j < n; j++)
                {
                    u.Add(a1.a[i][j]);
                }
                a.Add(u);
            }
            for (int i = 0; i < n; i++)
            {
                c.Add(a1.c[i]);
                c1.Add(0);
            }
            f  = f1;
            z  = 0;
            z1 = 0;
            for (int i = 0; i < m; i++)
            {
                z1 = z1 + b[i];
            }
            z1 = z1 * ((f == Zadacha.Max) ? -1 : 1);
            for (int i = 0; i < m; i++)
            {
                c.Add(0);
                c1.Add(f == Zadacha.Max ? -1 : 1);
                Cb.Add(0);
                Cb1.Add(f == Zadacha.Max ? -1 : 1);
                basis.Add(n + i);
                for (int j = 0; j < m; j++)
                {
                    a[i].Add((i == j) ? 1 : 0);
                }
            }
            for (int i = 0; i < n1; i++)
            {
                x.Add(0);
                delta.Add(-1 * c[i]);
            }
            for (int i = 0; i < n; i++)
            {
                s = 0;
                for (int j = 0; j < m; j++)
                {
                    s = s + a[j][i];
                }
                delta1.Add((f == Zadacha.Max?-1:1) * s);
            }
            for (int i = 0; i < m; i++)
            {
                delta1.Add(0);
            }
            for (int i = 0; i < n; i++)
            {
                name.Add(string.Format("x{0}", i + 1));
            }
            for (int i = 0; i < m; i++)
            {
                name.Add(string.Format("y{0}", i + 1));
            }
            table = new SimplexTableM(
                a, b, Cb, Cb1, name, basis, m1, delta, delta1, z, z1);
            steps.Add(table);
            CreateSolution();
        }
Пример #5
0
        static async Task Main(string[] args)
        {
            Console.WriteLine("add - добавить задачу;");
            Console.WriteLine("list - просмотр списка задач;");
            Console.WriteLine("byName - поиск задачи по названию;");
            Console.WriteLine("byTag - поиск задачи по тегу;");
            Console.WriteLine("delete - удалить задачу;");
            Console.WriteLine("exit - выход.");

            var ask = Console.ReadLine();

            List <Zadacha> SpisokZadach = new List <Zadacha>();

            string   path = @"C:\Users\a_kli\PROzadachi\spisok.json>";
            FileInfo finf = new FileInfo(path);

            if (finf.Exists)
            {
                using (FileStream fs = new FileStream("spisok.json", FileMode.Open))
                {
                    Zadacha restoredZadacha = await JsonSerializer.DeserializeAsync <Zadacha>(fs);
                }
            }
            else
            {
                Console.WriteLine("Файл отсутствует");
            }
            while (ask != "exit")
            {
                switch (ask)
                {
                case "add":
                {
                    Zadacha zadachaX = new Zadacha();
                    zadachaX.Id = Guid.NewGuid();
                    Console.WriteLine("Введите название задачи");
                    zadachaX.Name = Console.ReadLine();
                    Console.WriteLine("Введите описание задачи");
                    zadachaX.Description = Console.ReadLine();
                    Console.WriteLine("Введите тэг задачи");
                    zadachaX.Tag  = Console.ReadLine();
                    zadachaX.Date = DateTime.Now;
                    SpisokZadach.Add(zadachaX);

                    using (FileStream fs = new FileStream("spisok.json", FileMode.Append))
                    {
                        await JsonSerializer.SerializeAsync <Zadacha>(fs, zadachaX);
                    }

                    /*Для записи в .txt
                     * using (StreamWriter sw = new StreamWriter("spisok.txt", true, System.Text.Encoding.Default))
                     * {
                     *  await sw.WriteLineAsync(zadachaX.kString());
                     * }
                     */
                    Console.WriteLine("Введите команду для продолжения");
                    ask = Console.ReadLine();
                    break;
                }

                case "list":
                {
                    foreach (var z in SpisokZadach)
                    {
                        Console.WriteLine("ID: " + z.Id + "\n " + z.Name + " (" + z.Description + ") Тэг: " + z.Tag + " Дата создания: " + z.Date);
                    }
                    Console.WriteLine("Введите команду для продолжения");
                    ask = Console.ReadLine();

                    break;
                }

                case "byName":
                {
                    Console.WriteLine("Введите название задачи");
                    var askName = Console.ReadLine();
                    //var selectedZadacha=SpisokZadach.Where(z.name => z.name==askName);
                    var selectedZadacha = from z in SpisokZadach
                                          where z.Name == askName
                                          select z;
                    if (selectedZadacha == null)
                    {
                        Console.WriteLine("Не нашлось задачи с таким именем");
                    }
                    else
                    {
                        foreach (var z in selectedZadacha)
                        {
                            Console.WriteLine("ID: " + z.Id + "\n " + z.Name + " (" + z.Description + ") Тэг: " + z.Tag + " Дата создания: " + z.Date);
                        }
                    }
                    Console.WriteLine("Введите команду для продолжения");
                    ask = Console.ReadLine();
                    break;
                }

                case "byTag":
                {
                    Console.WriteLine("Введите тег");
                    var askTag          = Console.ReadLine();
                    var selectedZadacha = from z in SpisokZadach
                                          where z.Tag == askTag
                                          select z;
                    foreach (var z in selectedZadacha)
                    {
                        Console.WriteLine("ID: " + z.Id + "\n " + z.Name + " (" + z.Description + ") Тэг: " + z.Tag + " Дата создания: " + z.Date);
                    }
                    Console.WriteLine("Введите команду для продолжения");
                    ask = Console.ReadLine();
                    break;
                }

                /*case "delete":
                 * {
                 *  foreach (var z in SpisokZadach)
                 *  {
                 *      Console.WriteLine("ID: " + z.Id + "\n " + z.Name + " ("+ z.Description + ") Тэг: " + z.Tag + " Дата создания: " + z.Date);
                 *
                 *  }
                 *  Console.WriteLine("Скопируйте ID удаляемой задачи:");
                 *  var askId = Console.ReadLine();
                 *  var i=1;
                 *  foreach (var z in SpisokZadach)
                 *  {
                 *      if (Convert.ToString(z.Id)==askId)
                 *      {
                 *          try
                 *          {
                 *              SpisokZadach.Remove(z);
                 *              Console.WriteLine("Задача удалена.");
                 *          }
                 *          catch
                 *          {
                 *              Console.WriteLine("Задачу удалить невозможно.");
                 *          }
                 *
                 *      }
                 *      i++;
                 *  }
                 *  Console.WriteLine("Введите команду для продолжения");
                 *  ask = Console.ReadLine();
                 *
                 *  break;
                 * }*/
                case "wrong":
                {
                    Console.WriteLine("Введите команду для продолжения");
                    ask = Console.ReadLine();
                    break;
                }

                default:
                {
                    Console.WriteLine("Набрана неизвестная команда");
                    ask = "wrong";
                    break;
                }
                }
            }
        }
Пример #6
0
 public IActionResult Create(Zadacha zadacha)
 {
     _db.Zadachi.Add(zadacha);
     _db.SaveChanges();
     return(RedirectToAction("List"));
 }