百度首页 | 百度空间
 
查看文章
 
占卦程序
2007-11-30 12:59

//写着玩的^_^

//写的过程中发现原来八卦跟二进制其实有很大关系,难怪有人说计算机是受周易启示而发明的^_^

#include<windows.h>
#include<stdio.h>
#include<math.h>
#include<time.h>
int Get_Eight_Diagrams(int first, int second, int third)
{
return first + 2 * second + 4 * third;//从爻象求八卦
}
void main()
{
int flag;
int result[6];
char number[][3] = {"一", "二", "三", "四", "五", "六"};
char yinyang[][3] = {"阴", "阳"};
char Eight_Diagrams[][3] =
{"坤", "艮", "坎", "巽", "震", "离", "兑", "乾"};

srand((unsigned)time(NULL)); //设随机数

printf("本卦:\t");
for(int i = 0; i < 6; i++)
{
   result[i] = rand() % 2;

   printf("%s ", yinyang[result[i]]);
}//随机求出六爻

printf(" %s为上, %s为下", Eight_Diagrams[Get_Eight_Diagrams(result[0], result[1], result[2])],
   Eight_Diagrams[Get_Eight_Diagrams(result[3], result[4], result[5])]);
printf("\n\n");
printf("变爻:\t第%s爻\n\n", number[flag = rand() % 6]);
//本卦求完

printf("互卦:\t");
printf("%s %s %s %s %s %s ",
   yinyang[result[1]], yinyang[result[2]], yinyang[result[3]],
   yinyang[result[2]], yinyang[result[3]], yinyang[result[4]]);

printf(" %s为上, %s为下\n\n", Eight_Diagrams[Get_Eight_Diagrams(result[1], result[2], result[3])],
   Eight_Diagrams[Get_Eight_Diagrams(result[2], result[3], result[4])]);
//互卦

result[flag] = !result[flag];
printf("变卦:\t");
printf("%s %s %s %s %s %s ",
   yinyang[result[0]], yinyang[result[1]], yinyang[result[2]],
   yinyang[result[3]], yinyang[result[4]], yinyang[result[5]]);

printf(" %s为上, %s为下\n\n", Eight_Diagrams[Get_Eight_Diagrams(result[0], result[1], result[2])],
   Eight_Diagrams[Get_Eight_Diagrams(result[3], result[4], result[5])]);
//变卦 
}

//先写着这个简易版,以后有机会再更新


类别:我知道你不知道 | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码:
 

     

©2008 Baidu