public void SprawdzenieRozwiazaniaDlaKonkretnegoSeedu()
        {
            int expectedResult        = 49; // zakodowany wynik spodziewany
            var values                = new List <int>();
            var weight                = new List <int>();
            var przedmioty            = new List <Przedmiot>();
            RandomNumberGenerator rng = new RandomNumberGenerator(1);
            int iloscPrzedmiotow      = 5;
            var plecaczek             = new Plecak(50);

            for (int i = 0; i < iloscPrzedmiotow; i++)
            {
                values.Add(rng.nextInt(1, 29));
                weight.Add(rng.nextInt(1, 29));
                przedmioty.Add(new Przedmiot(values[i], weight[i], i + 1));
            }

            przedmioty.Sort(delegate(Przedmiot x, Przedmiot y)
            {
                return(x.getvalueToWeight().CompareTo(y.getvalueToWeight()));
            });
            przedmioty.Reverse();

            plecaczek.DodawaniePrzedmiotowDoPlecaka(przedmioty);
            Assert.AreEqual(expectedResult, plecaczek.getusedSpace());
        }
示例#2
0
        public void Czy_jesli_pusty_to_zero()
        {
            Plecak Pl = new Plecak();

            Pl.UstawMaxWage(10);
            Assert.AreEqual(0, Pl.PokazWartosc());
        }
示例#3
0
        private void button1_Click(object sender, EventArgs e)
        {
            Plecak Plec    = new Plecak();
            int    Seed    = 1;
            int    MaxWaga = 10;

            Seed    = int.Parse(textBox1.Text);
            MaxWaga = int.Parse(textBox2.Text);

            RandomNumberGenerator x = new RandomNumberGenerator(Seed);

            Przedmiot Pom = new Przedmiot();

            Plec.UstawMaxWage(MaxWaga);

            for (int i = 0; i < 10; i++)
            {
                Pom.UstawWageIWartosc(x.nextInt(1, 30), x.nextInt(1, 30));

                if (Plec.CzyWejdzie(Pom))
                {
                    Plec.DodajPrzedmiot(Pom);
                    listBox1.Items.Add(" Przedmiot o wadze " + Pom.ZwrocWage() + " i wartosci " + Pom.ZwrocWartosc() + " zmiescil sie \n");
                }
                else
                {
                    listBox1.Items.Add(" Przedmiot o wadze " + Pom.ZwrocWage() + " i wartosci " + Pom.ZwrocWartosc() + " nie zmiescil sie \n");
                }
            }
            listBox1.Items.Add("Suma wagi przedmiotow: " + Plec.PokazWage() + "\n");
            listBox1.Items.Add("Suma wartosci przedmiotow: " + Plec.PokazWartosc() + "\n");
        }
示例#4
0
        private void button1_Click(object sender, EventArgs e)
        {
            int              ziarno            = Convert.ToInt32(textSeed.Text);
            int              pojemnoscPlecaka  = Convert.ToInt32(textCapacity.Text);
            int              liczbaPrzedmiotow = Convert.ToInt32(textNoItems.Text);
            Plecak           plecaczek         = new Plecak(pojemnoscPlecaka);
            Algorytmy        algorytm          = new Algorytmy(ziarno, liczbaPrzedmiotow); // Algorytmy(seed, iloscPrzedmiotow) <- konstruktor
            List <Przedmiot> listaPrzedmiotow  = algorytm.generujPrzedmioty();



            string przedmioty = "";

            foreach (var przedmiot in listaPrzedmiotow)
            {
                przedmioty += przedmiot.getPrzedmiot();
            }
            textPrzedmioty.Text = przedmioty;



            algorytm.sortujPlecak(listaPrzedmiotow);
            plecaczek.DodawaniePrzedmiotowDoPlecaka(listaPrzedmiotow);
            string zawartoscPlecaka = plecaczek.getPlecak();

            textBag.Text = zawartoscPlecaka;
        }
示例#5
0
        public void MaxWaga()
        {
            Plecak Pl = new Plecak();

            Pl.UstawMaxWage(10);

            Assert.AreEqual(10, Pl.PokazMaxWage());
        }
示例#6
0
        public void TestGenereting()
        {
            Plecak Backpack1 = new Plecak(15, 60, 60);
            Plecak Backpack2 = new Plecak(40, 60, 60);
            var    res1      = Backpack1.WriteAllItems();
            var    res2      = Backpack2.WriteAllItems();

            Assert.IsFalse(res1 == res2);
        }
示例#7
0
        public void TestGatherItems()
        {
            Plecak Backpack1 = new Plecak(15, 60, 60);
            Plecak Backpack2 = new Plecak(2, 60, 60);
            var    res1      = Backpack1.WriteListBackpack();
            var    res2      = Backpack2.WriteListBackpack();

            Assert.AreEqual(res1, res2);
        }
示例#8
0
        public void TestCzyWejdzieF()
        {
            Plecak Pl = new Plecak();

            Pl.UstawMaxWage(10);
            Przedmiot Pr = new Przedmiot();

            Pr.UstawWageIWartosc(100, 100);
            Assert.IsFalse(Pl.CzyWejdzie(Pr));
        }
示例#9
0
        public void TestSorting()
        {
            Plecak Backpack1 = new Plecak(15, 60, 60);
            Plecak Backpack2 = new Plecak(15, 60, 60);

            Assert.IsNotNull(Backpack1);
            Assert.IsNotNull(Backpack2);
            var res1 = Backpack1.WriteAllItems();
            var res2 = Backpack2.WriteAllItems();

            Assert.AreEqual(res1, res2);
        }
示例#10
0
        public void TestDodajPrzedmiot2()
        {
            Plecak Pl = new Plecak();

            Pl.UstawMaxWage(100);
            Przedmiot Prz = new Przedmiot();

            Prz.UstawWageIWartosc(10, 10);
            Pl.DodajPrzedmiot(Prz);

            Assert.AreEqual(10, Pl.PokazWartosc());
        }
示例#11
0
        public void CzyZwracaPrzynajmniejJedenElementGdyJedenPrzedmiotSpelniaOgraniczenia()
        {
            var przedmioty = new List <Przedmiot>();

            przedmioty.Add(new Przedmiot(1, 1, 1));
            przedmioty.Add(new Przedmiot(1, 1000, 2));

            var plecaczek = new Plecak(50);

            plecaczek.DodawaniePrzedmiotowDoPlecaka(przedmioty);
            Assert.IsNotNull(plecaczek.getprzedmiotyWPlecaku());
        }
示例#12
0
        public void CzyZwracaPusteRozwiazanieGdyZadenPrzedmiotNieSpelniaOgraniczen()
        {
            var przedmioty = new List <Przedmiot>();

            przedmioty.Add(new Przedmiot(1, 51, 1));
            przedmioty.Add(new Przedmiot(1, 60, 2));
            przedmioty.Add(new Przedmiot(1, 75, 3));

            var plecaczek = new Plecak(50);

            plecaczek.DodawaniePrzedmiotowDoPlecaka(przedmioty);
            Assert.IsTrue(plecaczek.getprzedmiotyWPlecaku().Count == 0);
        }
示例#13
0
        public void TestWeight()
        {
            Plecak Backpack2 = new Plecak(50, 60, 60);
            var    res       = Backpack2.WriteAllItems();

            Backpack2.GatherItems();
            if (Backpack2.weightMax < Backpack2.WeightCurrent)
            {
                Assert.Fail();
            }
            else
            {
                Assert.IsTrue(Backpack2.weightMax > Backpack2.WeightCurrent);
            }
        }
示例#14
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(textBox1.Text) || string.IsNullOrWhiteSpace(textBox2.Text) || string.IsNullOrWhiteSpace(textBox3.Text))
            {
                textBox4.Text = "Brak parametrów";
            }
            else
            {
                textBox4.Text = "";
                var amount = textBox1.Text;
                var weight = textBox2.Text;
                var value  = textBox3.Text;


                plecak = new Plecak(int.Parse(amount), int.Parse(value), int.Parse(weight));
                var wholeBackpack = plecak.WriteAllItems();
                textBox4.Text += wholeBackpack;
            }
        }
示例#15
0
        public void CzyKolejnoscPrzedmiotowMaWplywNaZnalezioneRozwiazanie()
        {
            var przedmiot1  = new Przedmiot(1, 1, 1);
            var przedmiot2  = new Przedmiot(5, 25, 2);
            var przedmiot3  = new Przedmiot(5, 33, 3);
            var przedmioty  = new List <Przedmiot>();
            var przedmioty1 = new List <Przedmiot>();

            przedmioty.Add(przedmiot1);
            przedmioty.Add(przedmiot2);
            przedmioty.Add(przedmiot3);

            przedmioty1.Add(przedmiot3);
            przedmioty1.Add(przedmiot2);
            przedmioty1.Add(przedmiot1);

            var plecaczek  = new Plecak(50);
            var plecaczek1 = new Plecak(50);

            plecaczek.DodawaniePrzedmiotowDoPlecaka(przedmioty);
            plecaczek1.DodawaniePrzedmiotowDoPlecaka(przedmioty1);

            Assert.AreNotEqual(plecaczek, plecaczek1);
        }