示例#1
0
 public void butonIslemleri(int sayi)
 {
     sw.Start();
     sifirla();
     textBox1.Text = sayi.ToString();
     label4.Text   = ""; label5.Text = "";
     z.yolcusayisi = sayi; z.dereceHesapla(); z.toplamKm = 0;
     th            = new Thread(new ThreadStart(algoritma));
     th.Start(); th.Join(); sw.Stop();
     label13.Text = sw.ElapsedMilliseconds + " ms"; label12.Text = sayi + " Yolcu için ücret ve yol hesaplanıyor";
     label9.Text  = Math.Round(z.karHesapla()) + " ₺";
 }
示例#2
0
        private void button1_Click(object sender, EventArgs e)
        {
            string yolcuSayisiString = textBox1.Text;

            if (baslangicID == 0 || bitisID == 0)
            {
                MessageBox.Show("Başlangıç ve bitiş noktası seçilmedi.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (String.IsNullOrEmpty(yolcuSayisiString))
            {
                MessageBox.Show("Yolcu Sayısı Girilmedi.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
                textBox1.Clear(); textBox1.Focus();
            }
            else if (int.Parse(yolcuSayisiString) > 50 || int.Parse(yolcuSayisiString) < 5)
            {
                MessageBox.Show("Yolcu Sayısı Belirlenen Aralıkta Değil.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
                textBox1.Clear(); textBox1.Focus();
            }
            else
            {
                for (int i = 0; i < 81; i++)
                {
                    List <Sehir> komsular = new List <Sehir>();
                    for (int j = 0; j < 81; j++)
                    {
                        if (komsulukKontrol(sehir[i].plaka, sehir[j].plaka) && i != j)
                        {
                            komsular.Add(sehir[j]);
                        }
                    }
                    sehir[i].komsular.Clear(); sehir[i].komsuMesafe.Clear();
                    sehir[i].komsular = komsular;

                    for (int k = 0; k < sehir[i].komsular.Count; k++)
                    {
                        sehir[i].komsuMesafe.Add(Zeplin.MesafeHesapla(sehir[i].plaka, sehir[i].komsular[k].plaka));
                    }
                }

                yolcuSayisi = int.Parse(yolcuSayisiString);
                z           = new Zeplin(baslangicID, bitisID, yolcuSayisi);
                th          = new Thread(() => algoritma());
                sw.Start();  th.Start();  th.Join();  sw.Stop();
                label12.Text = "Başlangıç Noktası ve Bitiş Noktası için En Kısa Yol Hesaplanıyor";
                label13.Text = sw.ElapsedMilliseconds + " ms";
                label9.Text  = Math.Round(z.karHesapla()) + " ₺";
                if (butonKontrol)
                {
                    button8.Enabled = true;
                }
            }
        }