周易八卦——数字卦预测的程序实现

 1         /// <summary>
 2         /// 根据数字确定八卦的上下卦,以及爻
 3         /// </summary>
 4         /// <param name="numbs"></param>
 5         /// <returns></returns>
 6         private static List<int> ComputerEightDiagrams(List<int> numbs)
 7         {
 8             List<int> dias = new List<int>();
 9
10             for (int i = 0; i < numbs.Count; i++)
11             {
12                 if (i != numbs.Count - 1)
13                 {
14                     var m = numbs[i] % 8;
15
16                     if (m == 0) m = 8;
17
18                     dias.Add(m);
19
20                 }
21                 else
22                 {
23                     var n = numbs[i] % 6;
24
25                     if (n == 0) n = 6;
26
27                     dias.Add(n);
28                 }
29             }
30             return dias;
31         }

根据用户的输入确定是哪一卦,哪一爻。

下面的代码是如何在控制台打印八卦图:

 1         private static void Print(List<int> diagrams)
 2         {
 3             //存储
 4             string[] keys = { "111", "011", "101", "001", "110", "010", "100", "000" };
 5
 6             var up = diagrams[1];
 7             var down = diagrams[0];
 8
 9             var upStr = keys[up - 1];
10             var downStr = keys[down - 1];
11
12             n = 0;
13             PrintYao(upStr.ToCharArray(), diagrams[2]);
14             PrintYao(downStr.ToCharArray(), diagrams[2]);
15
16             Console.ResetColor();
17         }
18
19         private static int n = 0;
20         private static void PrintYao(char[] chars, int yao)
21         {
22             bool isYao=false;
23
24             foreach (var item in chars)
25             {
26                 n++;
27
28                 Console.WriteLine("");
29
30                 isYao = n == 6 - yao + 1;
31
32                 if (item == ‘1‘)
33                 {
34                     Console.BackgroundColor =isYao? ConsoleColor.Yellow:ConsoleColor.Blue;
35                     Console.WriteLine("            ");
36                 }
37                 else if (item == ‘0‘)
38                 {
39                     Console.BackgroundColor = isYao ? ConsoleColor.Yellow : ConsoleColor.DarkRed;
40
41                     var color = Console.BackgroundColor;
42
43                     Console.Write("     ");
44
45                     Console.ResetColor();
46                     Console.Write("  ");
47
48                     Console.BackgroundColor = color;
49                     Console.Write("     ");
50                     Console.Write("\r\n");
51                 }
52             }
53         }
diagrams,存储了上卦和下卦的顺序,其中keys数组中存储了八卦的爻信息,1:阳爻,0:阴爻。比如 111代表乾卦。此程序运行效果如下:

高亮:代表算出的爻。下载完整的代码:https://github.com/wangqiang3311/mywork

时间: 2024-10-25 02:24:53

周易八卦——数字卦预测的程序实现的相关文章

周易八卦起名法 - 给宝宝起名必看

你是不是从准备怀孕时就给宝宝取名了?如果没有,不妨从宝宝起名的四要素.阴阳五行.生肖等方面考虑,参考宝宝中心的宝宝起名思路,读读别人的宝宝起名趣事,为你的宝宝找到一个满意的名字. 如果还是找不到合适的名字,不妨试试中国传统的卦象法,嘉铭宝宝起名软件首创八卦起名,根据您的卦象为你量身打造专属于你的好听名字,宝宝起名,你还在等什么,快来嘉铭宝宝起名软件免费下载吧. 和阴阳五行一样,八卦也是中国智慧的产物,它对中国古代科技和人的思维模式有着重大的影响.八卦是<周易>书中的基本结构,而<周易&g

输入任意个数字求和的小程序

设计思想: 先让用户输入需要求和的数字的个数,然后建立对应长度的动态数组,并让其每一项依次相加得结果,最后输出结果. 流程图: 开始! step1:输入需要对多少个数字求和 step2:使用new关键字开辟内存空间,建立动态数组 step3:依次输入每一项 step4:依次对每一项相加求和 step5:输出结果 结束! 1 //package com; 2 3 import java.util.Scanner; 4 5 import javax.swing.plaf.synth.SynthSpi

量化投资_MATLAB在时间序列建模预测及程序代码

1 ARMA时间序列机器特性 下面介绍一种重要的平稳时间序列--ARMA时间序列. ARMA时间序列分为三种: AR模型,auto regressiv model MA模型,moving average model ARMA模型,auto regressive moving average model 可证ARMA时间序列具有遍历性,因此可以通过它的一个样本估计自协方差函数及自相关函数. 2 ARMA.AR.MA模型的基础知识(略) 3 例:随机模拟下列序列,样本容量10000,其中样本符合均值

【程序员眼中的统计学(9)】总体和样本的估计:进行预测

总体和样本的估计:进行预测 作者 白宁超 2015年10月15日18:30:07 摘要:程序员眼中的统计学系列是作者和团队共同学习笔记的整理.首先提到统计学,很多人认为是经济学或者数学的专利,与计算机并没有交集.诚然在传统学科中,其在以上学科发挥作用很大.然而随着科学技术的发展和机器智能的普及,统计学在机器智能中的作用越来越重要.本系列统计学的学习基于<深入浅出统计学>一书(偏向代码实现,需要读者有一定基础,可以参见后面PPT学习).正如(吴军)先生在<数学之美>一书中阐述的,基于

六爻预测等各种预测术的本质探讨之随机数猜想

对于各类预测术,比如六爻术,源于周易八卦.大家对预测术的观点泾渭分明,要么很相信,要么很不屑.或者有些人认为信则有不信则无. 当然我本人是信奉现代科学的,不过预测术确实有不可思议的地方,对过去和未来的分析不是简单的一句"巧合,概率论"能说的过去的.现经过本人的一番分析,试图对各类预测术的本质来个大起底. 其实,预测术不神奇,更不是有什么鬼神之力.而且也不能说古人比现在人更聪明.预测术的外圈是遵循一定规律的一整套规则,这些规则是古代在不停的经验总结中逐步完善的.换句话说,只要你自己能遵循

【程序员眼中的统计学(5)】排列组合:排序、排位、排

排列组合:排序.排位.排 作者 白宁超 2015年10月15日18:30:07 摘要:程序员眼中的统计学系列是作者和团队共同学习笔记的整理.首先提到统计学,很多人认为是经济学或者数学的专利,与计算机并没有交集.诚然在传统学科中,其在以上学科发挥作用很大.然而随着科学技术的发展和机器智能的普及,统计学在机器智能中的作用越来越重要.本系列统计学的学习基于<深入浅出统计学>一书(偏向代码实现,需要读者有一定基础,可以参见后面PPT学习).正如(吴军)先生在<数学之美>一书中阐述的,基于统

算法生成太极八卦图

前面一篇文章是通过算法生成一幅太极图,有道是:无极生太极,太极生两仪,两仪生四象,四象生八卦.那么这一节就为太极生成一个八卦图.虽然我对易经这种玄之又玄的哲学没什么研究,但至少八卦可以看做是二进制的鼻祖.愿太极八卦保佑我们的程序绝无BUG,永不修改. 根据二进制数的规定:有,用1表示;无,用0表示.我们可以得出八卦各卦阳爻和阴爻的二进制数.下面我们写出八卦各卦阳爻的二进制数(即有阳爻为1,无阳爻为0): 坤:黑黑黑,卦符阴阴阴,二进制数为000 艮:黑黑白,卦符阴阴阳,二进制数为001 坎:黑白

使用机器学习预测天气(第三部分神经网络)

概述??这是使用机器学习预测平均气温系列文章的最后一篇文章了,作为最后一篇文章,我将使用google的开源机器学习框架tensorflow来构建一个神经网络回归器.关于tensorflow的介绍.安装.入门,请自己google,这里就不做讲述.??这篇文章我主要讲解一下几点:了解人工神经网络理论tensorflow高级API:Estimators构建DNN模型预测天气人工神经网络基础理论??上一篇文章主要讲解了如何构建线性回归模型(这是最基础的机器学习算法)来预测内布拉斯加州林肯市每天的平均气温

《周易》中的君子形象--http://cul.china.com.cn/guoxue/2018-06/04/content_40369049.htm

中国文学本质上是一种君子文学,君子是中国文学的创作主体,君子与小人的人格冲突是中国文学矛盾冲突的主要形式.最早的君子是居住于城邦的贵族,而西周以来这一语词的道德化倾向愈来越重,渐渐摆脱了阶级意义而成为人格的象征.侯敏教授分析<周易>经传中“君子”一词的意义演化,古经中的君子具有贵族和智慧的意味,而<易传>中的君子则更多指向道德和人格的意义.杨隽教授则从风雅歌诗的角度分析君子人格中的艺术意蕴,歌诗言志体现了君子卓然不群的知识和艺术修养,而弦歌不绝则是君子坚守理想与追求的象征.赵玉敏副