新浪博客

整数勾股弦新公式的发现及数据库的建立5完

2023-10-01 13:08阅读:
整数勾股弦新公式的发现及数据库的建立 5 全文
输入定差K打印个数L VB程序
这个程序实际上可视为与定差K相对应的整数勾股弦数据库
Private Sub Form_Click(): Form1.Width = 11520: Form1.Height = 15360
Dim A(20): Dim B(20): Dim C(20): Dim Y(20)
K = InputBox('输入定差K=')
输入定差K
L = InputBox('输入打印个数L=') 输入打印个数L
V = 0 打印个数 计数开始
For E = K + 2 To 10000: F = (E * E - K * K) / 2 / K: G = F + K 生成勾股弦
H = Int(F) F取整为H
If (H <> F) Then GoTo S 股不是整数,则退出
If (H = F) Then Print Spc(4); 'A='; E; F; G; K 股是整数,打印 勾股弦及K
V = V + 1 打印个数 计数
If (V = L + 1) Then GoTo W 打印个数够了,退出
A(1) = E: A(2) = F: A(3) = G 公约开始
For I = 1 To 3: B(I) = A(I): Next I
For I = 1 To 3: Y(I) = A(I): Next I
For I = 1 To 2: n1 = A(1): m1 = A(2)
If m1 > n1 Then
m = m1: N = n1
Else
m = n1: N = m1
End If
Do
R = m Mod N 辗转相除
If R = 0 Then Exit Do
m = N
N = R
Loop
Print Spc(4); n1; ' '; m1; ' 的最大公约数X ='; N N是最大公约数
A(1) = N
A(2) = A(I + 2)
Next I
For I = 1 To 3
C(I) = B(I) / N 计算公约后勾股弦
Next I
Print: Print Spc(4); '独立 '; C(1); C(2); C(3) 打印独立勾股弦
Print : S:
Next E
W:
Print Spc(4); '成功'
End Sub

定差K=1,打印个数 L=5 结果如下:
A B C K 公约数 独立 A B C
3 4 5 1 1 3 4 5 A大于B,不取
5 12 13 1 1 5 12 13 K=1 只产生独立勾股弦
7 24 25 1 1 7 24 25
9 40 41 1 1 9 40 41
11 60 61 1 1 11 60 61

定差K=2,打印个数L=5 结果如下:
A B C K 公约数 独立 A B C
4 3 5 2 1 4 3 5 A大于B,不取
6 8 10 2 2 3 4 5 K=2 产生派生勾股弦
8 15 17 2 1 8 15 17 也产生独立勾股弦
10 24 26 2 2 5 12 13
12 35 37 2 1 12 35 37

定差K=3,打印个数L=4 结果如下:
A B C K 公约数 独立 A B C
9 12 15 3 3 3 4 5 K=3只产生派生勾股弦
15 36 39 3 3 5 12 13
21 72 75 3 3 7 24 25
27 120 123 3 3 9 40 41

定差K=18打印个数L=7 结果如下:
A B C K 公约数 独立 A B C
24 7 25 18 1 24 7 5 A大于B,不取
30 16 34 18 2 15 8 17 A大于B,不取
36 27 45 18 9 4 3 5 A大于B,不取
42 40 58 18 2 21 20 29 A大于B,不取
48 55 73 18 1 48 55 73
54 72 90 18 18 3 4 5
60 91 109 18 1 60 91 109

整数勾股弦公式只是一个归纳出来的公式,不是用理论推演出来的,是一个发现。我甚至认为,连经典的勾股定理也可能是一个归纳公式,是一个发现,并没有理论指引。其中也可能含有猜测、运幸、灵感的因素。但坚持不断的努力,才是决定性的因素。
全文完

我的更多文章

下载客户端阅读体验更佳

APP专享