占術是六大國術之一,包括六爻四柱奇門遁甲六壬……用中文寫這類程式,那叫乙個得心應手
type
t天乾=record
陰陽序數:0..1;
五行序數:0..4;
序數:1..10;
十二宮之長生:1..12;
漢字,五行漢字,十神:string;
end;
t地支=record
陰陽序數:0..1;
五行序數:0..4;
序數:1..12;
漢字,五行漢字:string;
藏幹一,藏幹二,藏幹三:t天乾;
end;
var
form1: tform1;
var甲, 乙,丙,丁,戊,己,庚,辛,壬,癸 :t天乾;
子,醜,寅,卯,辰,巳,午,未,申,酉,戌 ,亥 :t地支;
年幹,月幹,日乾,時乾:t天乾;
年支,月支,日支,時支:t地支;
年柱神煞,月柱神煞,日柱神煞,時柱神煞: string ;
procedure 干支賦值;
begin
甲.序數:=1;
乙.序數:=2;
丙.序數:=3;
丁.序數:=4;
戊.序數:=5;
己.序數:=6;
庚.序數:=7;
辛.序數:=8;
壬.序數:=9;
癸.序數:=10;
子.序數:=1;
醜.序數:=2;
寅.序數:=3;
卯.序數:=4;
辰.序數:=5;
巳.序數:=6;
午.序數:=7;
未.序數:=8;
申.序數:=9;
酉.序數:=10;
戌.序數:=11;
亥.序數:=12;
甲.十二宮之長生:=亥.序數;
乙.十二宮之長生:=午.序數;
丙.十二宮之長生:=寅.序數;
丁.十二宮之長生:=酉.序數;
戊.十二宮之長生:=寅.序數;
己.十二宮之長生:=酉.序數;
庚.十二宮之長生:=巳.序數;
辛.十二宮之長生:=子.序數;
壬.十二宮之長生:=申.序數;
癸.十二宮之長生:=卯.序數;
子.藏幹一:=癸;
醜.藏幹一:=己;
醜.藏幹二:=辛;
醜.藏幹三:=癸;
寅.藏幹一:=甲;
寅.藏幹二:=丙;
寅.藏幹三:=戊;
卯.藏幹一:=乙;
辰.藏幹一:=戊;
辰.藏幹二:=癸;
辰.藏幹三:=乙;
巳.藏幹一:=丙;
巳.藏幹二:=庚;
巳.藏幹三:=戊;
午.藏幹一:=丁;
午.藏幹二:=己;
未.藏幹一:=己;
未.藏幹二:=乙;
未.藏幹三:=丁;
申.藏幹一:=庚;
申.藏幹二:=壬;
申.藏幹三:=戊;
酉.藏幹一:=辛;
戌.藏幹一:=戊;
戌.藏幹二:=丁;
戌.藏幹三:=辛;
亥.藏幹一:=壬;
亥.藏幹二:=甲;
end;
function 定十二宮(某地支:t地支):string;
const
十二宮:array[1…12] of string=(『長生』,『沐浴』,『冠帶』,『臨官』,『帝旺』,
『衰』,『病』,『死』,『庫』,『絕』,『胎』,『養』);
vari,j:integer;
begin
i:=0;
if odd(日乾.序數)=true then j:=日乾.十二宮之長生-2;//
if odd(日乾.序數)=false then j:=日乾.十二宮之長生;
repeat i:=i+1 ;
if odd(日乾.序數)=true then j:= (j+1) mod 12;// 陽幹順查
if odd(日乾.序數)=false then
j:= (j+11)mod 12;// 陰乾逆查
end;
end;
until j+1=某地支.序數;
result:=十二宮[i];
end;
delphi寫的時鐘
很久以前寫的程式了,要整理機器,只好放到這了 unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,extctrls,stdctrls type tform...
Delphi變數型別
delphi整形變數型別有以下幾種 type range format shortint 128.127 signed 8 bit smallint 32768.32767 signed 16 bit longint 2147483648.2147483647 signed 32 bit int64...
javascript 變數共佔記憶體問題
var a 5 var b a b 1 console.log b 得到6 console.log a 得到5在基本資料型別上 賦值的時候只是值得複製 var a 1,2,3,4 var b a b.push 4 console.log b 得到 1,2,3,4 console.log a 得到 1...