Re: Dans un demi-cercle

Liste des GroupesRevenir à fs maths 
Sujet : Re: Dans un demi-cercle
De : bayosky (at) *nospam* pasla.invalid (HB)
Groupes : fr.sci.maths
Date : 19. Jan 2022, 15:40:38
Autres entêtes
Organisation : Guest of ProXad - France
Message-ID : <61e822e8$0$4989$426a74cc@news.free.fr>
References : 1 2
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0
Le 19/01/2022 à 12:17, ast a écrit :
Le 16/01/2022 à 19:05, HB a écrit :
Bonsoir,
 
R    a    b    c
4    2    2    7
7    2    7    11
8    2    9    12
9    2    12    12
9    3    3    17
9    6    6    14
13    1    13    22
15    3    14    25
16    4    4    31
16    7    20    20
16    8    17    22
16    12    12    23
19    11    19    26
....
 Comment as-tu trouvé ces solutions ?
J'ai transformé d'abord le problème en
  c = (u - ab)/(2R)
     avec u² = (4R² - a²)(4R² - b²)
Ensuite, "brutalement" avec une programmation rudimentaire dans Excel pour remplir un tableau :
J'ai testé pour R de 2 à 110 en espérant y repérer qqchose ;o)
(en éliminant les valeurs ayant un diviseur commun)
Voici le code VBA
=============================================================
Sub Cherche()
Dim a, b, c, R, V As LongLong
Dim u As Double
Dim BID As Boolean
Dim L, LL As Integer
L = 1
LL = 1
For R = 2 To 110
   BID = False
   For a = 1 To 2 * R - 1
     For b = a To 2 * R - 1
       V = (4 * R ^ 2 - a ^ 2) * (4 * R ^ 2 - b ^ 2)
       u = Sqr(V)
       If Int(u) = u Then
         c = (u - a * b) / (2 * R)
          If c >= b And Int(c) = c Then
            If Not (a = b And b = c) Then
              If FPGCD(FPGCD(R, a), FPGCD(b, c)) = 1 Then
                L = L + 1
                Cells(L, 1).Value = R
                Cells(L, 2).Value = a
                Cells(L, 3).Value = b
                Cells(L, 4).Value = c
                Cells(L, 5).Value = V
                Cells(L, 6).Value = u
                BID = True
              End If
            End If
          End If
        End If
      Next
    Next
    If Not BID Then
      LL = LL + 1
      Cells(LL, 8).Value = R
    End If
Next
End Sub
Function FPGCD(ByVal aa As LongLong, ByVal bb As LongLong) As Variant
Dim Rep As Variant
Dim N, p, Q, R As LongLong
If Int(aa) <> aa Or Int(bb) <> bb Or aa = 0 Or bb = 0 Then
     Rep = CVErr(xlErrValue)
Else
     N = WorksheetFunction.Max(aa, bb)
     p = WorksheetFunction.Min(aa, bb)
     Do
         Q = Int(N / p)
         R = N - Q * p
     If R = 0 Then Exit Do
         N = p
         p = R
     Loop
     Rep = p
End If
FPGCD = Rep
End Function
=============================================================
HB

Date Sujet#  Auteur
16 Jan 22 * Dans un demi-cercle12HB
17 Jan 22 +- Re: Dans un demi-cercle1rosab
17 Jan 22 +* Re: Dans un demi-cercle2Michel Talon
18 Jan 22 i`- Re: Dans un demi-cercle1Michel Talon
17 Jan 22 +- Re: Dans un demi-cercle1Olivier Miakinen
17 Jan 22 +* Re: Dans un demi-cercle5nobody
17 Jan 22 i+* Re: Dans un demi-cercle3HB
18 Jan 22 ii`* Re: Dans un demi-cercle2ast
18 Jan 22 ii `- Re: Dans un demi-cercle1HB
17 Jan 22 i`- Re: Dans un demi-cercle1Olivier Miakinen
19 Jan 22 `* Re: Dans un demi-cercle2ast
19 Jan 22  `- Re: Dans un demi-cercle1HB

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal