Exemplo n.º 1
0
        /// <summary>
        /// 亥子丑年生人,柱中见寅为孤见戌为寡
        /// 寅卯辰年生人,柱中见巳为孤见丑为寡
        /// 巳午未年生人,柱中见申为孤见辰为寡
        /// 申酉戌年生人,柱中见亥为孤见未为寡
        /// </summary>
        /// <returns></returns>
        private string[] 孤辰寡宿(GanZhi[] gzs)
        {
            int[] pattern = new int[0];
            int   idx     = ShenShaBase.会局(this.Bazi.年);

            switch (idx)
            {
            case 0:
                pattern = new int[] { 2, 10 };
                break;

            case 1:
                pattern = new int[] { 5, 1 };
                break;

            case 2:
                pattern = new int[] { 8, 4 };
                break;

            case 3:
                pattern = new int[] { 11, 7 };
                break;
            }

            var res = gzs.Select(gz => pattern.Any(p => p == gz.Zhi.Index) ? true : false);

            return(res.Any(b => b) ? new string[0] : null);
        }
Exemplo n.º 2
0
 public ShenSha(string name, GanZhi[] gz)
 {
     this.ssBase = ShenShaBase.Get(name);
     this.GZ     = gz;
 }