Ejemplo n.º 1
0
        private bool PackSetHasAllMandatory(PackSet packSet, List <List <double> > lstMandatory)
        {
            foreach (List <double> mandatorySum in lstMandatory)
            {
                bool found = false;

                int count = packSet.Sums.Count(elm => elm == mandatorySum[0]);

                if (count < mandatorySum.Count)
                {
                    return(false);
                }

                /*foreach (Pack pack in packSet.Packs)
                 * {
                 *  if (pack.Sums.Contains(sum))
                 *  {
                 *      found = true;
                 *      break;
                 *  }
                 * }
                 *
                 * if (!found)
                 *  return false;
                 * else
                 *  found = false;
                 */
            }

            return(true);
        }
Ejemplo n.º 2
0
        private void Button2_Click(object sender, EventArgs e)
        {
            List <PackSet> lstPackSets = new List <PackSet>();

            Pack p1 = new Pack();

            p1.Sums.Add(32.95);
            p1.Sums.Add(24);
            p1.Sums.Add(10);
            p1.Sums.Add(8);

            Pack p2 = new Pack();

            p1.Sums.Add(28.77);
            p1.Sums.Add(16);
            p1.Sums.Add(15);
            p1.Sums.Add(15);

            Pack p3 = new Pack();

            p1.Sums.Add(55);
            p1.Sums.Add(19.5);

            PackSet ps1 = new PackSet();

            ps1.Packs.Add(p1);
            ps1.Packs.Add(p2);
            ps1.Packs.Add(p3);

            PackSet ps2 = new PackSet();

            ps2.Packs.Add(p1);
            ps2.Packs.Add(p3);
            ps2.Packs.Add(p2);

            lstPackSets.Add(ps1);
            lstPackSets.Add(ps2);

            MessageBox.Show(lstPackSets.Count.ToString());

            lstPackSets = lstPackSets.Distinct().ToList();

            MessageBox.Show(lstPackSets.Count.ToString());
        }