FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Théorème d’Al-Kashi ou Loi des sinus  Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Théorème d’Al-Kashi ou Loi des sinus  Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Théorème d’Al-Kashi ou Loi des sinus  Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Théorème d’Al-Kashi ou Loi des sinus  Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Théorème d’Al-Kashi ou Loi des sinus  Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Théorème d’Al-Kashi ou Loi des sinus  Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Théorème d’Al-Kashi ou Loi des sinus  Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Théorème d’Al-Kashi ou Loi des sinus  Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -29%
DYSON V8 Origin – Aspirateur balai sans fil
Voir le deal
269.99 €

 

 Théorème d’Al-Kashi ou Loi des sinus

Aller en bas 
2 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Théorème d’Al-Kashi ou Loi des sinus  Empty
MessageSujet: Théorème d’Al-Kashi ou Loi des sinus    Théorème d’Al-Kashi ou Loi des sinus  EmptyDim 29 Mar 2020 - 7:38

Code:

rem ============================================================================
rem                         TRIGONOMETRIE
rem                 Application du théorème d’Al-Kashi
rem     appélé aussi loi des cosinus ou théorème de Pythagore généralisé
rem ============================================================================
rem On appelle formule d’Al-Kashi, ou loi des cosinus, ou encore théorème de
rem Pythagore généralisé l’égalité suivante, valable dans tout triangle ABC,
rem qui relie la longueur des côtés en utilisant le cosinus d’un des angles
rem du triangle :
rem         ____________________________________
rem        |                                    |
rem        | a² = b² + c² - 2 * b * c * cos(Â)  |
rem        |____________________________________|
rem
rem ============================================================================

label move
dim AB, AC, AD, CB, BD, CD, ACB, ACD, ADB, ADC, BAD, CAB, CAD, cosinus
dim ordonnees,abscisses
dim ax,ay,bx,by,cx,cy,dx,dy
dim xsouris,ysouris
dim t$

' ------------------------------------------------------------------------------
ordonnees = 200
abscisses = 200

Ax = 400 : Ay = 100
Bx = Ax  :  By = ordonnees
Cx = abscisses: Cy = ordonnees
Dx = 700 : Dy = ordonnees
CD = Dx - Cx
' ------------------------------------------------------------------------------
width 0,840 : height 0,720
caption 0,"Trigonométrie : Formule d'al-Kashi ou loi des cosinus ou encore théorème de Pythagore généralisé"
top 0,(screen_y - height_client(0))/2 : left 0,(screen_x - width_client(0))/2
color 0,245,235,220 : font_color 0,0,0,250
font_bold 0 : font_name 0,"DejaVu Sans Mono" : font_size 0,9

picture 10 : top 10,120 : left 10,10 : width 10,800 : height 10,200
color 10,245,235,220 : 2d_target_is 10 : font_size 10,10

alpha 15 : top 15,30 : left 15,20 : font_name 15,"DejaVu Dans Mono"
font_bold 15 : font_size 15,12 : font_color 15,255,0,0
caption 15,"Application du Théorème d'Al-Kashi. Papydall Mars 2020"

alpha 20 : top 20,60 : left 20,20 : font_name 20,"DejaVu Dans Mono"
font_bold 20 : font_size 20,12 : font_color 20,0,150,0
caption 20, "Déplacer le sommet  A du triangle avec la souris"

alpha 30 : top 30,610 : left 30,10 : font_name 30,"DejaVu Dans Mono"
font_bold 30 : font_size 30,12 : font_color 30,0,150,0

t$ = "Loi des cosinus (théorème d'Al-Kashi) également appelé théorème de Pythagore généralisé"+ chr$(13)  
t$ = t$ + string$(50," ") + "c² = a² + b² - 2 * a * b * cos(angle)" + chr$(13)
t$ = t$ + "Je me suis inspiré d'un programme en Free Basic de Gabriel LaFrenière"
caption 30,t$  
 
print_locate 200,320 : print "C" : print_locate 700,320 : print "D"
print_locate 600,20  : print "Souris :"
print_locate 700,20  : print "Sommet A :"

Quadrillage()
Calcul()

on_mouse_move 10,move

end
rem ============================================================================
move:
    off_mouse_move 10    
    xsouris = mouse_x_position(10) : ysouris = mouse_y_position(10)
    xSouris = xSouris - abscisses
    ySouris = ordonnees - ySouris
    
    Ax = xSouris + abscisses
    Bx = Ax
    Ay = ordonnees - ySouris
 
    calcul()
    on_mouse_move 10,move
return
rem ============================================================================
SUB Quadrillage()
    dim_local j
    2d_target_is 10 : 2d_pen_color 250,250,250
    
    for j = 0 to ordonnees - 100 step 100  : ' quadrillage.
        2d_line 0,j,800,j
    next j
    for j = 0 to 700 step 100
        2d_line j,0,j,400
    next j
    2d_pen_color 0,0,0
    2d_line 0,200,800,200 : ' axe des abscisses
    2d_line 200,200,200,0 : ' axe des ordonnees
END_SUB
rem ============================================================================
SUB Calcul()
    dim_local epsilon
    epsilon = 1E-16
    AB = ordonnees - Ay      : if ab <= 0 then ab = 2
    CB = abs(Bx - abscisses) : if cb = 0 then cb = epsilon
    BD = abs(Dx - Bx)        : if bd = 0 then bd = epsilon
    AC = sqr(AB * AB + CB * CB)
    AD = sqr(AB * AB + BD * BD)
    ACB = atn(AB / CB)
    ADB = atn(AB / BD)
    BAD = atn(BD / AB)
    CAB = atn(CB / AB)

' ***************** LOI DES COSINUS, OU THÉORÈME D'AL KASHI ********************

    ACD = acos((CD*CD + AC*AC - AD*AD) / (2 * CD * AC))
    ADC = acos((CD*CD + AD*AD - AC*AC) / (2 * CD * AD))
    CAD = acos((AD*AD + AC*AC - CD*CD) / (2 * AD * AC))
  
    print_locate 600,40 : print "x = " + str$(xsouris) + "   " : ' coordonnées du sommet.
    print_locate 600,60 : print "y = " + str$(ysouris) + "   "

    print_locate 700,40 : print "x = " + str$(Ax-abscisses) + "    "
    print_locate 700,60 : print "y = " + str$(ordonnees-Ay) + "    "
    
    print_locate 500,20 : print "AB = " + str$(int(ab)) + "   "
    print_locate 500,40 : print "BD = " + str$(int(bd)) + "   "
    print_locate 500,60 : print "CB = " + str$(int(cb)) + "   "
    print_locate 500,80 : print "CD = " + str$(int(cd)) + "   "
    
    print_locate 010,360 : print "AC = " + str$(round(ac,3))
    print_locate 200,360 : print "AC = SQR(AB * AB + CB * CB) ... théorème de Pythagore"
    print_locate 010,380 : print "AD = " + str$(round(ad,3))
    print_locate 200,380 : print "AD = AB / SIN(ADB)          AD = AB / COS(BAD)          AD = BD / SIN(BAD)"
    print_locate 010,400 : print "AB = " + str$(round(CB * TAN(ACB),3)) + "       "
    print_locate 200,400 : print "AB = CB * TAN(ACB)          AB = BD * TAN(ADC)          AB = AD * SIN(ADB)"
    print_locate 010,420 : print "BD = " + str$(round(AB * TAN(BAD),3))
    print_locate 200,420 : print "BD = AB * TAN(BAD)          BD = AD * SIN(BAD)          BD = AD * COS(ADB)"
  
    print_locate 010,450 : print "ADC = " + str$(round(ADC * 180 / pi,5)) + "°" + "    "
    print_locate 200,450 : print "ADC = ACOS((CD² + AD² - AC²) / (2 * CD * AD)) ...Loi des cosinus : Formule d'Al-Kashi."
    print_locate 010,470 : print "CAD = " + str$(round(CAD * 180 / pi,5)) + "°" + "    "
    print_locate 200,470 : print "CAD = ACOS((AD² + AC² - CD²) / (2 * AD * AC))"
    print_locate 010,490 : print "ACD = " + str$(round(ACD * 180 / pi,5)) + "°" + "    "
    print_locate 200,490 : print "ACD = ACOS((CD² + AC² - AD²) / (2 * CD * AC))"
    
    cosinus = (CD*CD + AC*AC - AD*AD) / (2 * CD * AC) : ' calcul via le cosinus.
    if cosinus = 0 then cosinus = epsilon
    ACD = atn(sqr(1 - cosinus * cosinus) / cosinus)
    
    print_locate 010,520 : print "ACB = " + str$(round(ACB * 180 / pi,5)) + "°" + "    "
    print_locate 200,520 : print "ACB = ATN(AB / CB)          ACB = ASIN(AB / AC)         ACB = ACOS(CB / AC)"
    print_locate 010,540 : print "ADB = " + str$(round(ADB * 180 / pi,5)) + "°" + "    "
    print_locate 200,540 : print "ADB = ATN(AB / BD)          ADB = ASIN(AB / AD)         ADB = ACOS(BD / AD)"
    print_locate 010,560 : print "BAD = " + str$(round(BAD * 180 / pi,5))
    print_locate 200,560 : print "BAD = ATN(BD / AB)          BAD = ASIN(BD / AD)         BAD = ACOS(AB / AD)"
    print_locate 010,580 : print "CAB = " + str$(round(CAB * 180 / pi,5))
    print_locate 200,580 : print "CAB = ATN(CB / AB)          CAB = ASIN(CB / AC)         CAB = ACOS(AB / AC)"
      
    color 10,245,235,220 : 2d_pen_color 255,0,0
    2d_line Ax,Ay,Cx,Cy  : 2d_line Ax,Ay,Dx,Dy : 2d_line Cx,Cy,Dx,Dy
    2d_flood (Cx+Dx)/2, ordonnees -1, 255,255,255
    2d_line Ax,Ay,Bx,By
    Quadrillage()
    2d_line 0,199,800,199
    print_target_is 10 : 2d_fill_color 245,235,220
    print_locate ax-5,ay-15 : print "A"    
    
    print_target_is 0
    print_locate 0,320    : print string$(150," ")
    print_locate ax+5,320 : print "B"
    print_locate 200,320  : print "C"
    print_locate 700,320  : print "D"
    print_target_is 0
END_SUB
rem ============================================================================
FNC Round(x,n)
    dim_local nbc
    nbc = power(10,n) : ' nombre de chiffres après la virgule
    result int(x*nbc+0.5)/nbc
END_FNC
rem ============================================================================


Spoiler:
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Théorème d’Al-Kashi ou Loi des sinus  Empty
MessageSujet: Re: Théorème d’Al-Kashi ou Loi des sinus    Théorème d’Al-Kashi ou Loi des sinus  EmptyDim 10 Mai 2020 - 23:21

C'est un post que je n'avais pas vu !

Merci Papydall !

Excellent ! Très bien expliqué et la demo interractive avec la souris, géniale !

Comme d'habitude, tu as fait très très fort !



Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Théorème d’Al-Kashi ou Loi des sinus  Empty
MessageSujet: Re: Théorème d’Al-Kashi ou Loi des sinus    Théorème d’Al-Kashi ou Loi des sinus  EmptyLun 11 Mai 2020 - 0:06

Ce post a eu plus d’octante vues, mais apparemment ça n’a intéressé personne.
Tout le monde n’est pas nécessairement géomètre ou  adepte de la trigonométrie.
Si tu l’as trouvé excellent c’est parce que toi aussi tu l’es (excellent et non pas laid !)   king
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé





Théorème d’Al-Kashi ou Loi des sinus  Empty
MessageSujet: Re: Théorème d’Al-Kashi ou Loi des sinus    Théorème d’Al-Kashi ou Loi des sinus  Empty

Revenir en haut Aller en bas
 
Théorème d’Al-Kashi ou Loi des sinus
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Théorème de Pick
» une application de 2d_flood
» Algorithme pour les fonctions circulaires sinus et cosinus

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: