public static List <NumberModel> GudingRule() { resNumber = AllNumer.GetAllNumer(); Teshuhao.AAAA(ref delNumber); Console.WriteLine("去掉四豹子,累计:" + delNumber.Count + " 个"); Teshuhao.AAAB(ref delNumber); Console.WriteLine("去掉三豹子,累计:" + delNumber.Count + " 个"); Teshuhao.AABB(ref delNumber); Console.WriteLine("去掉两对子,累计:" + delNumber.Count + " 个"); shalianhao.无序4连(true, true, ref delNumber); Console.WriteLine("无序4连,累计:" + delNumber.Count + " 个"); shalianhao.正向4连(true, true, ref delNumber); Console.WriteLine("正向4连,累计:" + delNumber.Count + " 个"); shalianhao.反向4连(true, true, ref delNumber); Console.WriteLine("反向4连,累计:" + delNumber.Count + " 个"); //shalianhao.无序3连(true, true, ref delNumber); //Console.WriteLine("无序3连,累计:" + delNumber.Count + " 个"); //shalianhao.正向4连(true, true, ref delNumber); //Console.WriteLine("正向3连,累计:" + delNumber.Count + " 个"); //shalianhao.正向3连(true, true, ref delNumber); //Console.WriteLine("正向3连,累计:" + delNumber.Count + " 个"); //shalianhao.反向4连(true, true, ref delNumber); //Console.WriteLine("反向3连,累计:" + delNumber.Count + " 个"); //shalianhao.反向3连(true, true, ref delNumber); //Console.WriteLine("反向3连,累计:" + delNumber.Count + " 个"); int j = resNumber.Count - delNumber.Count; Console.WriteLine(""); Console.WriteLine("======总共还剩:" + j + " 个======="); foreach (var item in delNumber) { var whereRemove = resNumber.FirstOrDefault(S => S.N1 == item.N1 && S.N2 == item.N2 && S.N3 == item.N3 && S.N4 == item.N4); resNumber.Remove(whereRemove); } return(resNumber); }
private void CheckDelNumer() { DelnumberModels.Clear(); #region 特殊杀号 if (ck_ABCD.Checked) { Rule.Teshuhao.ABCD(ref DelnumberModels); } if (ck_AABC.Checked) { Teshuhao.AABC(ref DelnumberModels); } if (ck_AABB.Checked) { Teshuhao.AABB(ref DelnumberModels); } if (ck_AAAB.Checked) { Teshuhao.AAAB(ref DelnumberModels); } if (ck_AAAA.Checked) { Teshuhao.AAAA(ref DelnumberModels); } if (ck_不连.Checked) { Teshuhao.连(ref DelnumberModels); } if (ck_2个顺子.Checked) { Teshuhao.两个顺子(ref DelnumberModels); } if (ck_兄弟号.Checked) { Teshuhao.兄弟号(ref DelnumberModels); } if (ck_非兄弟号.Checked) { Teshuhao.非兄弟号(ref DelnumberModels); } if (ck_全大.Checked) { Teshuhao.全大(ref DelnumberModels); } if (ck_全小.Checked) { Teshuhao.全小(ref DelnumberModels); } if (ck_全奇.Checked) { Teshuhao.全奇(ref DelnumberModels); } if (ck_全偶.Checked) { Teshuhao.全偶(ref DelnumberModels); } if (ck_对数.Checked) { Teshuhao.对数(ref DelnumberModels); } if (ck_杀05.Checked) { Teshuhao.M05对数(ref DelnumberModels); } if (ck_杀16.Checked) { Teshuhao.M16对数(ref DelnumberModels); } if (ck_杀27.Checked) { Teshuhao.M27对数(ref DelnumberModels); } if (ck_杀38.Checked) { Teshuhao.M38对数(ref DelnumberModels); } if (ck_杀49.Checked) { Teshuhao.M49对数(ref DelnumberModels); } #region 杀指定连号 if (ck_杀01.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 0, 1); } if (ck_杀12.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 1, 2); } if (ck_杀23.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 2, 3); } if (ck_杀34.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 3, 4); } if (ck_杀45.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 4, 5); } if (ck_杀56.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 5, 6); } if (ck_杀67.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 6, 7); } if (ck_杀78.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 7, 8); } if (ck_杀89.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 8, 9); } if (ck_杀90.Checked) { Teshuhao.杀两位固定数(ref DelnumberModels, 9, 0); } if (ck_杀012.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 0, 1, 2); } if (ck_杀123.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 1, 2, 3); } if (ck_杀234.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 2, 3, 4); } if (ck_杀345.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 3, 4, 5); } if (ck_杀456.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 4, 5, 6); } if (ck_杀567.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 5, 6, 7); } if (ck_杀678.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 6, 7, 8); } if (ck_杀789.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 7, 8, 9); } if (ck_杀890.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 8, 9, 0); } if (ck_杀901.Checked) { Teshuhao.杀三位固定数(ref DelnumberModels, 9, 0, 1); } #endregion if (ck_杀00.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 0); } if (ck_杀11.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 1); } if (ck_杀22.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 2); } if (ck_杀33.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 3); } if (ck_杀44.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 4); } if (ck_杀55.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 5); } if (ck_杀66.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 6); } if (ck_杀77.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 7); } if (ck_杀88.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 8); } if (ck_杀99.Checked) { Teshuhao.杀两重号(ref DelnumberModels, 9); } #region 杀指定双重号 #endregion #endregion #region 点杀区域 if (ck_点杀大小.Checked && !string.IsNullOrEmpty(this.tb_点杀大小.Text)) { string[] array = this.tb_点杀大小.Text.Split(','); Diansha.大小enter(array, ref DelnumberModels); } if (ck_点杀奇偶.Checked && !string.IsNullOrEmpty(this.tb_点杀奇偶.Text)) { string[] array = this.tb_点杀奇偶.Text.Split(','); Diansha.奇偶enter(array, ref DelnumberModels); } if (ck_点杀质合.Checked && !string.IsNullOrEmpty(this.tb_点杀质合.Text)) { string[] array = this.tb_点杀质合.Text.Split(','); Diansha.质合enter(array, ref DelnumberModels); } if (ck_点杀012.Checked && !string.IsNullOrEmpty(this.tb_点杀012.Text)) { string[] array = this.tb_点杀012.Text.Split(','); Diansha.L012enter(array, ref DelnumberModels); } if (ck_垃圾号.Checked && !string.IsNullOrEmpty(this.tb_垃圾号.Text)) { string[] array = this.tb_垃圾号.Text.Split(' '); List <NumberModel> list = new List <NumberModel>(); foreach (var n in array) { if (!string.IsNullOrEmpty(n.Trim(' ').Trim('\r').Trim('\n'))) { NumberModel number = NumberModel.ToParse(n); list.Add(number); } } lajihao.Enter(list, ref DelnumberModels); } #endregion #region 和值区域 if (ck_四位和值.Checked && !string.IsNullOrEmpty(tb_四位和值.Text)) { string[] array = this.tb_四位和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.四位和值(iNums, ref DelnumberModels); } if (ck_前三和值.Checked && !string.IsNullOrEmpty(tb_前三和值.Text)) { string[] array = this.tb_前三和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.前三和值(iNums, ref DelnumberModels); } if (ck_后三和值.Checked && !string.IsNullOrEmpty(tb_后三和值.Text)) { string[] array = this.tb_后三和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.后三和值(iNums, ref DelnumberModels); } if (ck_前二和值.Checked && !string.IsNullOrEmpty(tb_前二和值.Text)) { string[] array = this.tb_前二和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.前二和值(iNums, ref DelnumberModels); } if (ck_中二和值.Checked && !string.IsNullOrEmpty(tb_中二和值.Text)) { string[] array = this.tb_中二和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.中二和值(iNums, ref DelnumberModels); } if (ck_后二和值.Checked && !string.IsNullOrEmpty(tb_后二和值.Text)) { string[] array = this.tb_后二和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.后二和值(iNums, ref DelnumberModels); } if (ck_千百个和值.Checked && !string.IsNullOrEmpty(tb_千百个和值.Text)) { string[] array = this.tb_千百个和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.千百个和值(iNums, ref DelnumberModels); } if (ck_千十个和值.Checked && !string.IsNullOrEmpty(tb_千十个和值.Text)) { string[] array = this.tb_千十个和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.千十个和值(iNums, ref DelnumberModels); } if (ck_奇数和值.Checked && !string.IsNullOrEmpty(tb_奇数和值.Text)) { string[] array = this.tb_奇数和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.奇数和值(iNums, ref DelnumberModels); } if (ck_偶数和值.Checked && !string.IsNullOrEmpty(tb_偶数和值.Text)) { string[] array = this.tb_偶数和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.偶数和值(iNums, ref DelnumberModels); } if (ck_千个和值.Checked && !string.IsNullOrEmpty(tb_千个和值.Text)) { string[] array = this.tb_千个和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.千个和值(iNums, ref DelnumberModels); } if (ck_千十和值.Checked && !string.IsNullOrEmpty(tb_千十和值.Text)) { string[] array = this.tb_千十和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.千十和值(iNums, ref DelnumberModels); } if (ck_百个和值.Checked && !string.IsNullOrEmpty(tb_百个和值.Text)) { string[] array = this.tb_百个和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); hezhishahao.百个和值(iNums, ref DelnumberModels); } #endregion #region 杀定位区域 if (ck_杀定位.Checked) { List <int> qian = new List <int>(); List <int> bai = new List <int>(); List <int> shi = new List <int>(); List <int> ge = new List <int>(); foreach (var item in panel_qian.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked) { qian.Add(int.Parse(cb.Text)); } } } foreach (var item in panel_bai.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked) { bai.Add(int.Parse(cb.Text)); } } } foreach (var item in panel_shi.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked) { shi.Add(int.Parse(cb.Text)); } } } foreach (var item in panel_ge.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked) { ge.Add(int.Parse(cb.Text)); } } } shadingwei.Enter(qian, bai, shi, ge, ref DelnumberModels); } #endregion #region 杀连号 if (ck_无序2连.Checked) { shalianhao.无序2连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_无序3连.Checked) { shalianhao.无序3连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_无序4连.Checked) { shalianhao.无序4连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_正向2连.Checked) { shalianhao.正向2连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_正向3连.Checked) { shalianhao.正向3连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_正向4连.Checked) { shalianhao.正向4连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_反向2连.Checked) { shalianhao.反向2连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_反向3连.Checked) { shalianhao.反向3连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } if (ck_反向4连.Checked) { shalianhao.反向4连(this.ck_首尾相连.Checked, this.ck_09相连.Checked, ref DelnumberModels); } #endregion #region 两数和值 if (ck_两数和值.Checked && !string.IsNullOrEmpty(tb_两数和值.Text)) { string[] array = this.tb_两数和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); List <int> list = iNums.ToList(); dingliangshuhezhi.两数和值(list, ref DelnumberModels); } if (ck_三数和值.Checked && !string.IsNullOrEmpty(tb_三数和值.Text)) { string[] array = this.tb_三数和值.Text.Split(','); int[] iNums = Array.ConvertAll(array, int.Parse); List <int> list = iNums.ToList(); dingliangshuhezhi.数和值(list, ref DelnumberModels); } #endregion #region 字现 if (this.ck_sanzixian.Checked) { char[] psan = tb_sanzixian.Text.ToCharArray(); if (psan.Length > 4) { MessageBox.Show("上期号码长度大于4"); return; } List <int> sanlist = new List <int>(); foreach (var item in psan) { sanlist.Add(Convert.ToInt32(item.ToString())); } SanZiXian(sanlist, ref DelnumberModels); } #endregion #region 杀胆码 杀跨度 杀胆必须是最后一项 if (ck_杀跨度.Checked) { List <int> kuada = new List <int>(); foreach (var item in groupBox11.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked && cb.Name != "ck_杀跨度") { kuada.Add(int.Parse(cb.Text)); } } } shakuadu.Enter(kuada, ref DelnumberModels); } if (ck_杀胆码.Checked) { List <int> danma = new List <int>(); foreach (var item in groupBox10.Controls) { if (item is CheckBox) { CheckBox cb = (CheckBox)item; if (cb.Checked && cb.Name != "ck_杀胆码") { danma.Add(int.Parse(cb.Text)); } } } shadanma.ShaWuYiMa(danma, ref DelnumberModels); } #endregion // 杀胆码必须是最后一项 }