/// <summary>
    /// S'occupe de faire le calcul demandé dans l'éditeur
    /// </summary>
    public void Calculer()
    {
        Matrice résultat    = null;
        float   déterminant = 0;
        bool    scalaire    = false;

        switch (opérationActive)
        {
        case OpérationsMatricielles.ADDITON:
            résultat = Matrice.Additionner(new Matrice(scriptMatriceGauche.GetDataMatrice), new Matrice(scriptMatriceDroite.GetDataMatrice));
            scalaire = false;
            break;

        case OpérationsMatricielles.SOUSTRACTION:
            résultat = Matrice.Soustraction(new Matrice(scriptMatriceGauche.GetDataMatrice), new Matrice(scriptMatriceDroite.GetDataMatrice));
            scalaire = false;
            break;

        case OpérationsMatricielles.PRODUIT_SCALAIRE:
            résultat = Matrice.ProduitScalaire(new Matrice(scriptMatriceGauche.GetDataMatrice), scriptScalaire.Valeur);
            scalaire = false;
            break;

        case OpérationsMatricielles.TRANSPOSITION:
            résultat = Matrice.Transposée(new Matrice(scriptMatriceGauche.GetDataMatrice));
            scalaire = false;
            break;

        case OpérationsMatricielles.PRODUIT:
            résultat = Matrice.Produit(new Matrice(scriptMatriceGauche.GetDataMatrice), new Matrice(scriptMatriceDroite.GetDataMatrice));
            scalaire = false;
            break;

        case OpérationsMatricielles.FAUX_PRODUIT:
            résultat = Matrice.FauxProduit(new Matrice(scriptMatriceGauche.GetDataMatrice), new Matrice(scriptMatriceDroite.GetDataMatrice));
            scalaire = false;
            break;

        case OpérationsMatricielles.DETERMINANT:
            déterminant = Matrice.Déterminant(new Matrice(scriptMatriceGauche.GetDataMatrice));
            scalaire    = true;
            break;

        case OpérationsMatricielles.INVERSE_ADJOINTE:
            résultat = Matrice.MatriceInverse(new Matrice(scriptMatriceGauche.GetDataMatrice));
            scalaire = false;
            break;
        }
        if (scalaire)
        {
            scriptResultatDéterminant.AfficherRésultatScalaire(déterminant);
        }
        scriptResultatMatrice.AfficherRésultat(résultat);
    }
Пример #2
0
 ///////////////////////////// ************* Opérations  ***********////////////////////////////////
 private void BtnAddition_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         Matrice matriceA = CreerMatriceA(Convert.ToInt32(LignesA.Text), Convert.ToInt32(ColonnesA.Text));
         Matrice matriceB = CreerMatriceB(Convert.ToInt32(LignesB.Text), Convert.ToInt32(ColonnesB.Text));
         resultatsTxt.Text  = "La somme des matrices A et B est : \r\n";
         resultatsTxt.Text += (matriceA.Additionner(matriceB)).AfficheMatrice();
     }
     catch (Exception ex)
     {
         resultatsTxt.Text = "";
         MessageBox.Show(ex.Message);
     }
 }