- 注册时间
- 2009-4-27
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 3513
- 在线时间
- 小时
|
楼主 |
发表于 2021-7-15 09:42:06
|
显示全部楼层
参考代码
- Clear[test, x, a, f, t]
- d = 4993; pell = 65; p = 1; q = 2;
- x[p_, q_] := (p + Sqrt[d])/q;
- a[p_, q_] := IntegerPart[x[p, q]];
- t = 1/(x[p, q] - a[p, q]);
- f[{_, {i_, p_, q_}}] := {{i, p, q}, {i + 1, q a[p, q] - p, (d - (q a[p, q] - p)^2)/q}}
- test[{_, {i_, p_, q_}}] := (x[p, q] != t && p != pell) || i == 1
- First@NestWhile[f, {Null, {0, p, q}}, test] // AbsoluteTiming
复制代码 |
|