数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
楼主: 蔡家雄

勾股数新公式

  [复制链接]
发表于 2021-2-15 17:17 | 显示全部楼层
x+y=2有组解: 0
x+y=3有组解: 0
x+y=4有组解: 0
x+y=5有组解: 0
x+y=6有组解: 0
x+y=7有2组解: 0/解/3/4/5/解/4/3/5
x+y=8有2组解: 0
x+y=9有2组解: 0
x+y=10有2组解: 0
x+y=11有2组解: 0
x+y=12有2组解: 0
x+y=13有2组解: 0
x+y=14有3组解: 0/解/6/8/10
x+y=15有3组解: 0
x+y=16有3组解: 0
x+y=17有4组解: 0/解/5/12/13
x+y=18有4组解: 0
x+y=19有4组解: 0
x+y=20有4组解: 0
x+y=21有5组解: 0/解/9/12/15
x+y=22有5组解: 0
x+y=23有6组解: 0/解/8/15/17
x+y=24有6组解: 0
x+y=25有6组解: 0
x+y=26有6组解: 0
x+y=27有6组解: 0
x+y=28有7组解: 0/解/12/16/20
x+y=29有7组解: 0
x+y=30有7组解: 0
x+y=31有8组解: 0/解/7/24/25
x+y=32有8组解: 0
x+y=33有8组解: 0
x+y=34有9组解: 0/解/10/24/26
x+y=35有10组解: 0/解/15/20/25
x+y=36有10组解: 0
x+y=37有10组解: 0
x+y=38有10组解: 0
x+y=39有10组解: 0
x+y=40有10组解: 0
x+y=41有12组解: 0/解/20/21/29/解/21/20/29
x+y=42有13组解: 0/解/18/24/30
x+y=43有13组解: 0
x+y=44有13组解: 0
x+y=45有13组解: 0
x+y=46有14组解: 0/解/16/30/34
x+y=47有15组解: 0/解/12/35/37
x+y=48有15组解: 0
x+y=49有17组解: 0/解/9/40/41/解/21/28/35
x+y=50有17组解: 0
x+y=51有18组解: 0/解/15/36/39
x+y=52有18组解: 0
x+y=53有18组解: 0
x+y=54有18组解: 0
x+y=55有18组解: 0
x+y=56有19组解: 0/解/24/32/40
x+y=57有19组解: 0
x+y=58有19组解: 0
x+y=59有19组解: 0
x+y=60有19组解: 0
x+y=61有19组解: 0
x+y=62有20组解: 0/解/14/48/50
x+y=63有21组解: 0/解/27/36/45
x+y=64有21组解: 0
x+y=65有21组解: 0
x+y=66有21组解: 0
x+y=67有21组解: 0
x+y=68有22组解: 0/解/20/48/52
x+y=69有23组解: 0/解/24/45/51
x+y=70有24组解: 0/解/30/40/50
x+y=71有25组解: 0/解/11/60/61
x+y=72有25组解: 0
x+y=73有26组解: 0/解/28/45/53
x+y=74有26组解: 0
x+y=75有26组解: 0
x+y=76有26组解: 0
x+y=77有27组解: 0/解/33/44/55
x+y=78有27组解: 0
x+y=79有28组解: 0/解/16/63/65
x+y=80有28组解: 0
x+y=81有28组解: 0
x+y=82有29组解: 0/解/40/42/58
x+y=83有29组解: 0
x+y=84有30组解: 0/解/36/48/60
x+y=85有31组解: 0/解/25/60/65
x+y=86有31组解: 0
x+y=87有31组解: 0
x+y=88有31组解: 0
x+y=89有32组解: 0/解/33/56/65
x+y=90有32组解: 0
x+y=91有33组解: 0/解/39/52/65
x+y=92有34组解: 0/解/32/60/68
x+y=93有35组解: 0/解/21/72/75
x+y=94有36组解: 0/解/24/70/74
x+y=95有36组解: 0
x+y=96有36组解: 0
x+y=97有37组解: 0/解/13/84/85
x+y=98有39组解: 0/解/18/80/82/解/42/56/70
x+y=99有39组解: 0
x+y=100有39组解: 0
x+y=101有39组解: 0
有重复的解吗?
回复 支持 反对

使用道具 举报

发表于 2021-2-16 06:53 | 显示全部楼层
本帖最后由 ysr 于 2021-2-15 23:31 编辑

当x+y=10001有4组解: /解/8181/1820/8381其中(x + z) / 2=8281其方根为:91
/解/1197/8804/8885其中(x + z) / 2=5041其方根为:71
/解/4745/5256/7081其中(x + z) / 2=5913其方根为:76.8960337078578
/解/6165/3836/7261其中(x + z) / 2=6713其方根为:81.9328993750374

这回快一点,代码如下:

Private Sub Command1_Click()
Dim a, b, x, y, z, m
m = Text2
b1 = m / 2
b2 = b1 / 3
s1 = 0
Do While t < Val(b2) + 2
t = t + 1
b = 0
Do While t * b ^ 2 < Val(b1) + 2
a = b
b = b + 1
Do While t * a ^ 2 < Val(m)
a = a + 1
x = t * (a ^ 2 - b ^ 2)
y = 2 * a * b * t
z = Sqr(x ^ 2 + y ^ 2)
If InStr(z, ".") = 0 And x + y = Val(m) Then
m1 = (x + z) / 2
m2 = Sqr(m1)
s = s & "/解/" & x & "/" & y & "/" & z & "其中(x + z) / 2=" & m1 & "其方根为:" & m2 & vbCrLf
s1 = s1 + 1
Else
s1 = s1
End If
Loop
Loop
Loop


Text1 = Text1 & "当x+y=" & m & "有" & s1 + s2 & "组解: " & s
End Sub

Private Sub Command2_Click()
Text1 = ""
Text2 = ""
Form1.Cls
End Sub
回复 支持 反对

使用道具 举报

发表于 2021-2-16 09:22 | 显示全部楼层
传一下这个快速版可执行程序:(仅供参考,欢迎朋友使用)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2021-2-16 11:18 | 显示全部楼层
快速程序出来了,9位以内的勾股数都可以,超过9位就失效了。对a+b=163500169验证了一下,几分钟就出来结果,结果是正确的,就是364组解。
代码如下:

Private Sub Command1_Click()
Dim x, Y, z
m = Text2
x = 1
Do While x < Val(m) / 2 + 1

Y = Val(m) - x
z = Sqr(x ^ 2 + Y ^ 2)
If InStr(z, ".") = 0 Then
If MPC(MPC1(MbC(Trim(x), Trim(x)), MbC(Trim(Y), Trim(Y))), MbC(Trim(z), Trim(z))) = 0 Then
s = s & "/解/" & x & "/" & Y & "/" & z
s1 = s1 + 1
Else
s1 = s1
End If

Else
s1 = s1
End If
x = x + 1
Loop

Text1 = Text1 & "有" & s1 & "组解: " & s
End Sub

Private Sub Command2_Click()
Text1 = ""
Text2 = ""

End Sub










Public Function MbC(D1 As String, D2 As String) As String '乘法
Dim x, Y '两数长度
x = Len(D1): Y = Len(D2)
Dim a() As Integer
ReDim a(1 To x + Y, 1 To Y)
Dim I, J, C1, C2, CJ, JW
For J = Y To 1 Step -1 'D2
JW = 0 '进位清0
C2 = Mid$(D2, J, 1) '每位数
For I = x To 1 Step -1 'D1
  C1 = Mid$(D1, I, 1) '每位数
  CJ = C1 * C2 + JW '计算乘积
  c = I + J: r = Y + 1 - J
  a(c, r) = CJ Mod 10 '本位
  JW = CJ \ 10 '进位
Next
a(c - 1, r) = JW
Next
Dim b() As Integer
ReDim b(1 To x + Y)
JW = 0
For I = x + Y To 1 Step -1
Bit = JW
For J = 1 To Y
  Bit = Bit + a(I, J)
Next
b(I) = Bit Mod 10
JW = Bit \ 10
Next
If b(1) > 0 Then
MbC = MbC & b(1)
Else
MbC = MbC
End If
For I = 2 To x + Y
MbC = MbC & b(I)
Next
End Function

Public Function MPC(D1 As String, D2 As String) As String ';jianfaqi
Dim x, Y ';两数长度
If Len(D1) >= Len(D2) Then
D4 = String(Len(D1) - Len(D2), "0") & D2
d3 = D1
Else
D4 = D2
d3 = String(Len(D2) - Len(D1), "0") & D1
End If
x = Len(d3): Y = Len(D4)
Dim a() As Integer, B1() As Integer, C1() As Integer, E1() As Integer
ReDim a(1 To x)
ReDim B1(1 To Y)
ReDim C1(1 To x)
ReDim E1(1 To x)
Dim I, J, C2, CJ, JW
For J = Y To 1 Step -1 ';D2
JW = 1 ';yu jie weichuzhi
B1(J) = Mid(D4, J, 1) ';每位数
For I = x To 1 Step -1  ';D1
   a(I) = Mid(d3, I, 1) ';每位数
   C1(I) = 10 + a(I) - B1(I) - 1 + JW ';计算jia
   JW = C1(I) \ 10
   E1(I) = C1(I) Mod 10
  Next
  Next
  For r = 1 To x
  MPC = MPC & E1(r)
  For I = 1 To Len(MPC)
    If Not Mid(MPC, I, 1) = "0" Then
        Exit For
    End If
Next
strtmp = Mid(MPC, I)
  If Len(strtmp) = 0 Then
  MPC = "0"
  Else
MPC = strtmp
End If
  Next
  
  
End Function
  Public Function MPC1(D1 As String, D2 As String) As String 'jiafa
Dim x, Y '两数长度

If Len(D1) >= Len(D2) Then
D4 = String(Len(D1) - Len(D2), "0") & D2
d3 = D1
Else
D4 = D2
d3 = String(Len(D2) - Len(D1), "0") & D1
End If
x = Len(d3): Y = Len(D4)
Dim a() As Integer, B1() As Integer, C1() As Integer, E1() As Integer
ReDim a(1 To x)
ReDim B1(1 To Y)
ReDim C1(1 To x)
ReDim E1(1 To x)
Dim I, J, C2, CJ, JW
For J = Y To 1 Step -1 'D2
JW = 0 '进位清0
B1(J) = Mid$(D4, J, 1) '每位数
For I = x To 1 Step -1  'D1
   a(I) = Mid$(d3, I, 1) '每位数
   C1(I) = a(I) + B1(I) + JW '计算jia
   JW = C1(I) \ 10
   E1(I) = C1(I) Mod 10
  Next
  Next
  For r = 1 To x
  If JW = 0 Then
  MPC1 = MPC1 & E1(r)
  Else
  jc = jc & E1(r)
  MPC1 = JW & jc
  End If
  Next
  
End Function
回复 支持 反对

使用道具 举报

发表于 2021-2-16 11:21 | 显示全部楼层
传一下这个更快的快速版可执行程序:(仅供参考,欢迎朋友使用)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2021-2-18 21:15 | 显示全部楼层
蔡家雄 发表于 2021-2-18 12:56
请 ysr 兄:

删除你在第15页 至 第21页中的你的几十个贴子,

最后这个快速程序是完善的,可以保留吗?

点评

是我疏忽了,a+b=2021 有勾股数解,但 无本原解, (516, 1505, 1591) 有公约数43,为 非本原勾股数,  发表于 2021-3-9 20:43
我没打开来看,其他不必要的删掉吧  发表于 2021-2-18 21:26
回复 支持 反对

使用道具 举报

发表于 2021-2-18 21:22 | 显示全部楼层
蔡家雄 发表于 2021-2-18 12:56
请 ysr 兄:

删除你在第15页 至 第21页中的你的几十个贴子,

电脑反应慢,明天再说吧,到单位电脑上弄吧!谢谢沟通,您辛苦了,祝愿新年快乐!
回复 支持 反对

使用道具 举报

发表于 2021-3-13 16:48 | 显示全部楼层
wlc1 发表于 2021-3-13 10:42
程中永老师:您好!我相信你能够解决这个小题目吧!

求:8^3+b^3+c^3= (c+3)^3 的正整数解,谢谢!!

老师您好,感谢您的关注!
天天打工赚钱养家糊口,您提的问题有一定难度,我也没有把握解出啊!看来,您已经解过了,找不到解吧?其实,这样的同次幂不定方程非常复杂,人们还没有掌握其真正的规律啊!
回复 支持 反对

使用道具 举报

发表于 2021-5-5 13:53 | 显示全部楼层
n^2 末二位数为 44 的正整数 n ,按从小到大次序排成无穷数列 a1,a2,a3,…,求 a10
回复 支持 反对

使用道具 举报

发表于 2021-5-5 14:01 | 显示全部楼层
n^6 末二位数为 44 的正整数 n ,按从小到大次序排成无穷数列 a1,a2,a3,…,求 a10
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2024-3-29 21:29 , Processed in 0.107422 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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