cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 1411|回复: 3

hp 39gs和42s的八皇后程序

[复制链接]
发表于 2022-3-17 00:15:38 | 显示全部楼层 |阅读模式
本帖最后由 molucule 于 2022-3-17 00:25 编辑

hp 39&40gs的八皇后程序,结果写在矩阵里:

8->N:
MAKELIST(0,B,1,N,1)->L1:
MAKEMAT(0,1,N)->M1:
0->S:
1->K:
1->J:
1->F:
0->L1(1):
WHILE K>0 REPEAT
L1(K)+1->L1(K):
WHILE L1(K)<=N REPEAT
  1->J:
  1->F:
  WHILE J<K AND F==1 REPEAT
   IF(L1(J)==L1(K) OR ABS(L1(J)-L1(K))==ABS(J-K)) THEN
    0->F:
   END:
   J+1->J:
  END:
  IF F==1 THEN
   BREAK:
  END:
  L1(K)+1->L1(K):
END:
IF L1(K)<=N THEN
  IF K==N THEN
   S+1->S:
   DISP 4;S:
   L1->M2:
   ADDROW M1;M2;1:
  ELSE
   K+1->K:
   0->L1(K):
  END:
ELSE
  K-1->K:
END:
END:
DELROW M1;S+1:



 楼主| 发表于 2022-3-17 00:18:25 | 显示全部楼层
hp 42s的八皇后程序:

执行程序前先:
CLRG
FIX 8
8
STO 00
STO 05
10
STO 06
GTO A
R/S

程序:按一次R/S出一个结果
LBL "NQUEENS"
RCL 01
STO+ 02
RCL 06
STO / 02
1
STO- 00
RCL 00
X<>0?
GTO A
RCL 02
R/S
GTO D
LBL A
RCL 05
STO 01
LBL B
RCL 02
STO 03
CLX
STO 04
LBL C
1
STO+ 04
RCL 06
STO* 03
RCL 03
X=0?
GTO "NQUEENS"
IP
STO- 03
RCL 01
X=Y?
GTO D
-
ABS
RCL 04
X<>Y?
GTO C
LBL D
1
STO- 01
RCL 01
X<>0?
GTO B
1
STO+ 00
RCL 06
STO* 02
RCL 02
IP
STO- 02
STO 01
GTO D
 楼主| 发表于 2022-3-17 00:24:25 | 显示全部楼层
这两个计算器都算是比较慢的,39&40gs算八皇后大约2个多小时,hp 42s算第一个值大约14分钟,后面大约3分钟一个结果。
 楼主| 发表于 2022-3-17 00:35:42 | 显示全部楼层
HP 39&40gs计算两个日期间天数的程序:

子程序DAYS:

INT(D)->M:
(D-M)*100->Z:
INT(Z)->D:
INT((Z-D)*10000)->Y:
IF M<=2
THEN 365*Y+31*(M-1)+D+INT((Y-1)/4)->T:
ELSE 365*Y+31*(M-1)+D+INT(Y/4)-INT(0.4*M+2.3)->T:
END:

主程序:

PROMPT B:
ERASE:
B->D:
RUN DAYS:
T->X:
PROMPT F:
ERASE:
F->D:
RUN DAYS:
T->Y:
ABS(X-Y)->V:
DISP 4;V:
FREEZE:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-3-29 03:29 , Processed in 0.055397 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表