Direct math - une dll de math pas fini ...

Contenu du snippet

J'ai que que 14 ans et j'est eu envie de développer une DLL de Math pour me simplifier la vie. Et la je suis bloqué sur le Sinus et le Tangent. Faudra que j'attende l'année prochaine pour continuer mais je suis trop impatient donc je poste le code, si vos pouvez m'aider à trouver l'hypoténuse d'un triangle grace à Cos, Sin ou Tan, faite le moi savoir svp. Il y à 2 module de classe, 1 pour les calculs simple :
- Addition
- Soustraction
- Multiplication
- Division
- Modulo
- Carré
- Cube
Et il y en a 1 autre pour la trygonométrie avec quelques fonction :
- Cosinus
- Sinus
- Tangent
- Pythagore (pour trouver une hypoténuse grace à Pythagore)
- Adjacent (Pour trouver le coté adjacent d'un triangle rectangle grace à Cos)

Et voila, ya que sa alors qu'il en faudra 2 fois plus ... lol

Aidez moi svp !!!!

Source / Exemple :


' Module Calculs.cls

' Oblige la déclaration des variables
Option Explicit
Private I As Integer
Public NUM1 As Double
Public NUM2 As Double
Public NUM3 As Double
Public NUM4 As Double
Public Tag As Variant
Public Function Addition(W As Double, X As Double, Optional Y As Double, Optional Z As Double) As Double
' Ajoute tous les nombre entre eux
    Addition = W + X + Y + Z
End Function
Public Function Soustraction(W As Double, X As Double, Optional Y As Double, Optional Z As Double) As Double
' Retranche tous les nombre entre eux
    Soustraction = W - X - Y - Z
End Function
Public Function Multiplication(W As Double, X As Double, Optional Y As Double, Optional Z As Double) As Double
' Multiplie tous les nombre entre eux si Z et Y <> 0
    If (Y <> 0) And (Z <> 0) Then
        Multiplication = W * X * Y * Z
    End If
' Multiplie W et X si Y et Z = 0
    If (Z = 0) And (Y = 0) Then
' Effectue une multiplication à deux chiffres
        Multiplication = W * X
    End If
' Teste si Z = 0
    If (Z = 0) Then
' Multiplie W, X et Y
        Multiplication = W * X * Y
    End If
' Teste si Y = 0
    If (Y = 0) Then
' Multiplie W, X et Z
        Multiplication = W * X * Z
    End If
End Function
Public Function Division(W As Double, X As Double) As Variant
' Teste si X = 0
    If (X = 0) Then
        Division = "Erreur : Division par 0"
' Quitte la procédure
        Exit Function
    End If
' Effectue la division
    Division = W / X
End Function
Public Function Modulo(W As Double, X As Double) As Variant
' Teste si X = 0
    If (X = 0) Then
        Modulo = "Erreur : Division par 0"
' Quitte la procédure
        Exit Function
    End If
' Effectue la division et trouve le reste
    Modulo = W Mod X
End Function
Public Function Carre(X As Double) As Double
' Trouve le carre de X
    Carre = X * X
End Function
Public Function Cube(X As Double) As Double
' Trouve le cube de X
    Cube = X * X * X
End Function

' Module Trygonometrie.cls

' Oblige la déclaration des variables
Option Explicit
' Point du triangle
Public X As Double
Public Y As Double
Public Z As Double
' Angle du triangle
' AX = 90° car Cos, Sin et Tan veulent un angle droit
Public AY As Double
Public AZ As Double
' Coté du triangle
Public XY As Double
Public ZX As Double
Public YZ As Double
' Fonctions
Public Function Cosinus(Angle As Double) As Double
' Retourne le cosinus d'un angle
    Cosinus = Cos(Angle)
End Function
Public Function Sinus(Angle As Double) As Double
' Retourne le sinus d'un angle
    Sinus = Sin(Angle)
End Function
Public Function Tangent(Angle As Double) As Double
' Retourne le tangean d'un angle
    Tangent = Tan(Angle)
End Function
Public Function Pythagore(Oppose As Double, Adjacent As Double) As Double
' Utilise Pythagore pour trouver l'hypoténuse
    Pythagore = (Oppose * Oppose) + (Adjacent * Adjacent)
End Function
Public Function Adjacent(Hypotenuse As Double, Optional AY As Double) As Double
' Utilise cosinus pour trouver le coté adjacent du triangle XYZ
    Adjacent = Cos(AY) * Hypotenuse
End Function

Conclusion :


Aidez moi sinon je vais déprimer !! lol
Commentez ce code et notez le svp ! (n'oubliez pas qu'il n'est pas fini)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.