SHARE
TWEET

T-T

a guest Mar 15th, 2018 96 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.    protected void bPut_Click1(object sender, EventArgs e)
  2.         {  //0
  3.             int i = 0; int j = 0; int n = 0; int v = 0;
  4.             int nn = 0; int mm = 0; int tek = 0; int n1 = 0;
  5.             int k = 0; int npi = 0; int cher = 0; int jj = 0;
  6.             int kp = 0; int kk = 0; int sc = 0;
  7.             int m = 0;
  8.             int kolper = 0;
  9.             int vsp = 0;
  10.             Loads hh1 = new Loads();
  11.             Putv = new Putver [500];
  12.             Pute = new  Puted [500];
  13.             Putver Promp=null;
  14.             Putver Promp1=null;
  15.             Puted Promd=null;
  16.             Puted Promd1=null;
  17.             int[] nachv = new Int32[500];
  18.             int[] kput = new Int32[500];
  19.             int[] konv = new Int32[500];
  20.             int[] indmas = new Int32[1000];
  21.             double[] dlinp = new double[1000];
  22.             double[] gruz = new double[500];
  23.             double[] gruzp = new double[500];
  24.             double[] intens = new double[500];
  25.             double dlput = 0.0;
  26.             double putprom = 0.0;
  27.             string buff = "";
  28.            
  29.            
  30.             //нахождение всех путей для всех перевозок для всех вершин пиздееееец
  31.             for (i = 0; i < mv; i++)
  32.             {   //1
  33.                 if (Ver[i].tip == 1)
  34.                 {  //2
  35.                     v = Ver[i].numbv;
  36.                     if (Ver[i].Ld != null)
  37.                     {  //3
  38.                         kolper = Ver[i].Ld.Count;
  39.                         for (jj = 0; jj < kolper; jj++)
  40.                         {   //4
  41.                             hh1 = (Loads)Ver[i].Ld[jj];
  42.                             vsp = hh1.nver;
  43.                             for (nn = 0; nn < mv; nn++)
  44.                             {  //5
  45.                                 if (Ver[nn].numbv == vsp)
  46.                                 {  //6
  47.                                     mm = nn; break;
  48.                                 }  //e6
  49.                             }  //e5
  50.                             n1 = Ver[mm].numbv;
  51.                             npi = 0;
  52.                             nachv[tek] = Ver[i].numbv;
  53.                             konv[tek] = n1;
  54.                             gruz[tek] = hh1.ves;
  55.                             gruzp[tek] = gruz[tek];
  56.                             cher = 0;
  57.                             for (j = 0; j < tek; j++)
  58.                             {   //7
  59.                                 cher = cher + kput[j];
  60.                             }   // e7
  61.                             Putv[cher] = new Putver();
  62.                             Putv[cher].Pvt = new List<pp>();
  63.                             Pute[cher] = new Puted();
  64.                             Pute[cher].Pet = new List<ee>();
  65.                             path(Ver[i].numbv, n1, me, cher, ref Ed, ref Ver, ref Putv, ref Pute, out npi, mv,me);
  66.                             //path();
  67.                             kput[tek] = npi;
  68.                             tek++;
  69.                            
  70.                             //нахождение длин найденых путей
  71.                             for (j = cher; j < cher + kput[tek - 1]; j++)
  72.                             {   //8
  73.                                 if (Putv[j] != null)
  74.                                 {   //9
  75.                                     m = Putv[j].Pvt.Count;
  76.                                     if(Pute[j]!=null)
  77.                                     {  //10
  78.                                         m=Pute[j].Pet.Count;
  79.                                         dlput=0.0;
  80.                                             for (k = 0; k < m; k++)
  81.                                             {   //11
  82.                                            vsp=Pute[j].Pet[k].nvr;
  83.                                                 for (nn = 0; nn < me; nn++)
  84.                                                 {   //12
  85.                                                     if (Ed[nn].numbe == vsp)
  86.                                                     {   //13
  87.                                                         mm = nn; break;
  88.                                                     }  //e13
  89.                                                 }   // e12
  90.                                                 dlput = dlput + Ed[mm].length;
  91.                                             } // e11
  92.                                     } // e10
  93.                                         dlinp[j] = dlput;
  94.                                 } //e9
  95.                             } // e8
  96.                            
  97.                            
  98.                            
  99.                            
  100.                            
  101.                         }   // e4
  102. //                            n++;
  103.                     } // e3
  104.                 } // e2
  105.             } // end i first e1
  106.    
  107.    
  108.    
  109.    
  110.    
  111.    
  112.    
  113.    
  114.    
  115.    
  116.    //Сортировка путей для каждой вершины
  117.    //проход по перевозкам
  118.     for (i = 0; i < tek; i++)
  119.     {
  120.         //получение смещения к путям текущей перевозки
  121.         cher = 0;
  122.         for (j = 1; j <= i; j++) cher += kput[j - 1];
  123.        
  124.         //проход по путям текущей перевозки и получение массива индексов путей
  125.         for (kk = cher; kk < cher + kput[i]; kk++) indmas[kk] = kk;
  126.        
  127.         //ну типо сортировка
  128.         ShellSort(ref dlinp, kput[i], ref indmas, cher);
  129.         k = 0; //что это блеать вообще , на кой это тут ????
  130.     }
  131.  
  132.  
  133.  
  134.  //????????????????СУКА НЕ ЕБУ ВООБЩЕ ЧТО ЭТО ЗА ХУИТА БЛЕАТЬ Я ЕБАЛ ЕГО В РОТ НАХУЙ!!!!!
  135.  //вроде это приблуда какието огрызки от сортировки шелла, почему оно здесь а не в блядской СОРТИРОВКЕ ШЕЛЛАА!!!
  136.    
  137.     //проход по всем перевозкам
  138.     for (v = 0; v < tek; v++)
  139.     {    //v
  140.         k = kput[v]; //получение колво путей для текущей V перевозки
  141.        
  142.         //подсчет смещения в массиве всех путей для путей текущей перевозки
  143.         cher = 0;
  144.         for (jj = 1; jj <= v; jj++)
  145.             cher += kput[jj - 1];
  146.        
  147.         //хз
  148.         Promp1 = Putv[0];
  149.         Promd1 = Pute[0];
  150.        
  151.         //проход по путям текущей перевозки
  152.         for (i = cher; i < cher + k; i++)
  153.         {  
  154.             mm = indmas[i];
  155.             //броверка блокировки
  156.             if (mm >= 0)
  157.             {  
  158.                 //буферизация текущего пути
  159.                 Promp = Putv[i];
  160.                 Promd = Pute[i];
  161.                
  162.                 //замена текущего пути на путь с сортированным индексом
  163.                 Putv[i] = Putv[mm];
  164.                 Pute[i] = Pute[mm];
  165.                
  166.                 //блокировка индекса
  167.                 indmas[i] = -1;
  168.                
  169.                 //поиск в масиве сортированных индесов индекса соответсвубщего текущему пути
  170.                 for (j = cher; j < cher + k; j++)  
  171.                 {
  172.                     if (indmas[j] == i)
  173.                     {
  174.                         //буферизация пути расположенного по месту найденного индекса
  175.                         Promp1 = Putv[j];
  176.                         Promd1 = Pute[j];
  177.                         //замена пути по месту найденого индекса текущим путем    
  178.                         Putv[j] = Promp;
  179.                         Pute[j] = Promd;
  180.                        
  181.                         //замена буферизаций
  182.                         //накуй это нужно ????
  183.                         Promp = Promp1;
  184.                         Promd = Promd1;
  185.                        
  186.                         //блокировка найденного индекса
  187.                         indmas[j] = -1;
  188.                        
  189.                         break;
  190.                     }
  191.                 }  
  192.             }
  193.            
  194.         }
  195.     }
  196.      //ебанаВРООТ!
  197.  
  198.  
  199.  
  200.  
  201.     //???????? БЛЯЯЯЯЯЯЯЯ,.... АА не кароч это вывод всех путей в список
  202.     k = 0;
  203.     for (j = 0; j < tek; j++) k = k + kput[j]; //получение колличеста всех путей
  204.     for (j = 0; j < k; j++)
  205.     {
  206.         if (Putv[j] != null)
  207.         {
  208.             m = Putv[j].Pvt.Count;
  209.             buff = "";
  210.             buff =buff + j.ToString();
  211.             buff = buff + ":";
  212.             for (i = 0; i < m; i++)
  213.             {
  214.                 mm = (int)Putv[j].Pvt[i].nvr;
  215.                 buff = buff + mm.ToString();
  216.                 buff = buff + "-";
  217.             }
  218.             buff = buff + "(";
  219.             buff = buff + dlinp[j].ToString();
  220.             buff = buff + ")";
  221. //                        DropDownList1.Items.Add(buff);
  222.             ListBox1.Items.Add(buff);
  223.         }
  224.     }
  225.     k = 0;    
  226.     kp++;
  227.                
  228. } // end bPut_click1
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top