|
[这个贴子最后由ataorj在 2013/06/01 10:12am 第 1 次编辑]
更正:2) n=2q时,得:[q中不应分解出完全平方数,否则会产生无谓的重复求解]
改为:2) n=2q时,得:[注:q为奇数且q中不应分解出完全平方数,否则会产生无谓的重复求解]
因为,q中若含2因子则n为4的倍数,与前面n中不应分解出完全平方数矛盾.
这时,若1) m=2q时的n若可为偶数,则从各字母取值知,1)式包含了2)式,唯一的差别是1)式违反了2)式的限制,相当于扩大了2)式的取值,所以有矛盾,这时,只能也限制1)式的取值,这样的话,1)式2)式完全等价了,
===========================
有:勾股数组优化后的最终通解公式是:
';仍然表示平方
x=n(2qp+p';)
y=n(2qp+2q';)
z=n(2qp+2q';+p';)
其中,n,p,q是大于0的整数
其中,为避免无谓的重复求解,则还要求:
n必须为奇数且n中不应分解出完全平方数.即n为奇质数(这里的质数包括1.可见许多外国数学中规定1是质数是有道理的)或是各不相同的奇质数的积(由于刚才规定了1为质数,"或是"前面可以略去,我们可以再次发现规定了1为质数后的便捷).即:n可以是1或3,5,7,11,13,15,17,19,21,23,29,...
===========================
我编程求了250组,经过验证,没有出现重复.下面关注有无遗漏.
n<=21时,n可取10个值(见上面罗列),z<=21*5=105,
注:该5是n,p,q=1时的z,下面的p,q取值是解方程21=2qp+2q';+p';分别当q=1,p=1:
p<=(√(2^2+4*(21-2))-2)/2舍尾进一得4,q<=(√(2^2+4*2*(21-1))-2)/(2*2)舍尾进一得3,则现在为获得105内的z,我们要构造10*4*3=120组勾股数组,凡是z大于105的无法保障能和前面的完全连续,所以舍弃.比如0110,0088,0066和0119,0105,0056之间缺少115,92,69.不想有遗漏的话则每对p,q取值不同时要分别调整n的最大取值,比较繁琐,比如,p,q=1时,n=1218/5...这里不再考虑.
----------
下面是该120组勾股数组,两次罗列.第一次,字母顺次取值构造勾股数组,每组三数从大到小排列;第二次,排序全部勾股数组,105(含)内,共有35组勾股数组,谁有勾股数组表可以验证之?如果没有人提供反例或理论,则我这个应该是最可靠的了.
**p=1
//q=1
n=1:0005,0004,0003
n=3:0015,0012,0009
n=5:0025,0020,0015
n=7:0035,0028,0021
n=11:0055,0044,0033
n=13:0065,0052,0039
n=15:0075,0060,0045
n=17:0085,0068,0051
n=19:0095,0076,0057
n=21:0105,0084,0063
//q=2
n=1:0013,0012,0005
n=3:0039,0036,0015
n=5:0065,0060,0025
n=7:0091,0084,0035
n=11:0143,0132,0055
n=13:0169,0156,0065
n=15:0195,0180,0075
n=17:0221,0204,0085
n=19:0247,0228,0095
n=21:0273,0252,0105
//q=3
n=1:0025,0024,0007
n=3:0075,0072,0021
n=5:0125,0120,0035
n=7:0175,0168,0049
n=11:0275,0264,0077
n=13:0325,0312,0091
n=15:0375,0360,0105
n=17:0425,0408,0119
n=19:0475,0456,0133
n=21:0525,0504,0147
**p=2
//q=1
n=1:0010,0008,0006
n=3:0030,0024,0018
n=5:0050,0040,0030
n=7:0070,0056,0042
n=11:0110,0088,0066
n=13:0130,0104,0078
n=15:0150,0120,0090
n=17:0170,0136,0102
n=19:0190,0152,0114
n=21:0210,0168,0126
//q=2
n=1:0020,0016,0012
n=3:0060,0048,0036
n=5:0100,0080,0060
n=7:0140,0112,0084
n=11:0220,0176,0132
n=13:0260,0208,0156
n=15:0300,0240,0180
n=17:0340,0272,0204
n=19:0380,0304,0228
n=21:0420,0336,0252
//q=3
n=1:0034,0030,0016
n=3:0102,0090,0048
n=5:0170,0150,0080
n=7:0238,0210,0112
n=11:0374,0330,0176
n=13:0442,0390,0208
n=15:0510,0450,0240
n=17:0578,0510,0272
n=19:0646,0570,0304
n=21:0714,0630,0336
**p=3
//q=1
n=1:0017,0015,0008
n=3:0051,0045,0024
n=5:0085,0075,0040
n=7:0119,0105,0056
n=11:0187,0165,0088
n=13:0221,0195,0104
n=15:0255,0225,0120
n=17:0289,0255,0136
n=19:0323,0285,0152
n=21:0357,0315,0168
//q=2
n=1:0029,0021,0020
n=3:0087,0063,0060
n=5:0145,0105,0100
n=7:0203,0147,0140
n=11:0319,0231,0220
n=13:0377,0273,0260
n=15:0435,0315,0300
n=17:0493,0357,0340
n=19:0551,0399,0380
n=21:0609,0441,0420
//q=3
n=1:0045,0036,0027
n=3:0135,0108,0081
n=5:0225,0180,0135
n=7:0315,0252,0189
n=11:0495,0396,0297
n=13:0585,0468,0351
n=15:0675,0540,0405
n=17:0765,0612,0459
n=19:0855,0684,0513
n=21:0945,0756,0567
**p=4
//q=1
n=1:0026,0024,0010
n=3:0078,0072,0030
n=5:0130,0120,0050
n=7:0182,0168,0070
n=11:0286,0264,0110
n=13:0338,0312,0130
n=15:0390,0360,0150
n=17:0442,0408,0170
n=19:0494,0456,0190
n=21:0546,0504,0210
//q=2
n=1:0040,0032,0024
n=3:0120,0096,0072
n=5:0200,0160,0120
n=7:0280,0224,0168
n=11:0440,0352,0264
n=13:0520,0416,0312
n=15:0600,0480,0360
n=17:0680,0544,0408
n=19:0760,0608,0456
n=21:0840,0672,0504
//q=3
n=1:0058,0042,0040
n=3:0174,0126,0120
n=5:0290,0210,0200
n=7:0406,0294,0280
n=11:0638,0462,0440
n=13:0754,0546,0520
n=15:0870,0630,0600
n=17:0986,0714,0680
n=19:1102,0798,0760
n=21:1218,0882,0840
下面顺次排出:
0005,0004,0003
0010,0008,0006
0013,0012,0005
0015,0012,0009
0017,0015,0008
0020,0016,0012
0025,0020,0015
0025,0024,0007
0026,0024,0010
0029,0021,0020
0030,0024,0018
0034,0030,0016
0035,0028,0021
0039,0036,0015
0040,0032,0024
0045,0036,0027
0050,0040,0030
0051,0045,0024
0055,0044,0033
0058,0042,0040
0060,0048,0036
0065,0052,0039
0065,0060,0025
0070,0056,0042
0075,0060,0045
0075,0072,0021
0078,0072,0030
0085,0068,0051
0085,0075,0040
0087,0063,0060
0091,0084,0035
0095,0076,0057
0100,0080,0060
0102,0090,0048
0105,0084,0063
下面的无法保障能和上面的完全连续,所以舍弃
0110,0088,0066
0119,0105,0056
0120,0096,0072
0125,0120,0035
0130,0104,0078
0130,0120,0050
0135,0108,0081
0140,0112,0084
0143,0132,0055
0145,0105,0100
0150,0120,0090
0169,0156,0065
0170,0136,0102
0170,0150,0080
0174,0126,0120
0175,0168,0049
0182,0168,0070
0187,0165,0088
0190,0152,0114
0195,0180,0075
0200,0160,0120
0203,0147,0140
0210,0168,0126
0220,0176,0132
0221,0195,0104
0221,0204,0085
0225,0180,0135
0238,0210,0112
0247,0228,0095
0255,0225,0120
0260,0208,0156
0273,0252,0105
0275,0264,0077
0280,0224,0168
0286,0264,0110
0289,0255,0136
0290,0210,0200
0300,0240,0180
0315,0252,0189
0319,0231,0220
0323,0285,0152
0325,0312,0091
0338,0312,0130
0340,0272,0204
0357,0315,0168
0374,0330,0176
0375,0360,0105
0377,0273,0260
0380,0304,0228
0390,0360,0150
0406,0294,0280
0420,0336,0252
0425,0408,0119
0435,0315,0300
0440,0352,0264
0442,0390,0208
0442,0408,0170
0475,0456,0133
0493,0357,0340
0494,0456,0190
0495,0396,0297
0510,0450,0240
0520,0416,0312
0525,0504,0147
0546,0504,0210
0551,0399,0380
0578,0510,0272
0585,0468,0351
0600,0480,0360
0609,0441,0420
0638,0462,0440
0646,0570,0304
0675,0540,0405
0680,0544,0408
0714,0630,0336
0754,0546,0520
0760,0608,0456
0765,0612,0459
0840,0672,0504
0855,0684,0513
0870,0630,0600
0945,0756,0567
0986,0714,0680
1102,0798,0760
1218,0882,0840
|