CodeS-SourceS
Rechercher un code, un tuto, une réponse

Calcul Matriciel

Soyez le premier à donner votre avis sur cette source.

Snippet vu 320 fois

Contenu du snippet

Module Module1

Sub Main()
matrice()
Console.WriteLine("Appuyez sur la touche 'Entrée' pour sortir")
Console.Read()
End Sub
Private Sub matrice()

Dim Determinant As Double
Dim matrice_inverse(3, 3) As Double
Dim matrice(3, 3) As Double
Dim valeur As Double
'//La matrice//
Console.WriteLine("Taper la matrice 3x3")
For i As Integer = 0 To 3
For j As Integer = 0 To 3
Console.Write("----> ")
matrice(i, j) = Console.ReadLine()
Next
Next

' //Affichage matrice 3x3 introduite...
Console.Write("La matrice 3x3:")
For i As Integer = 0 To 3
Console.WriteLine("t ")
For j As Integer = 0 To 3
Console.Write("t " & matrice(i, j))
Console.WriteLine("")
Next
Next

' //Calcul du déterminant de la matrice 3x3
Dim det1 As Double
det1 = matrice(0, 0) * ((matrice(1, 1) * matrice(2, 2)) - (matrice(2, 1) * matrice(1, 2)))
Dim det2 As Double
det2 = matrice(0, 1) * ((matrice(1, 0)) * (matrice(2, 2)) - (matrice(2, 0) * matrice(1, 2)))
Dim det3 As Double
det3 = matrice(0, 2) * ((matrice(1, 0) * (matrice(2, 1)) - (matrice(2, 0) * matrice(1, 1))))
Determinant = det1 - det2 + det3
If (Determinant = 0) Then
Console.WriteLine("La matrice n'est pas inversible")
Exit Sub
End If
Console.WriteLine("Déterminant = " & Determinant)

' //Afficher La matrice transposée
Console.WriteLine("")
Console.WriteLine("La matrice transposée est:")
For i As Integer = 0 To 3
Console.WriteLine("t")
For j As Integer = 0 To 3
Console.Write("t " & matrice(j, i))
Console.WriteLine("")
Next
Next

'//Calcul de la matrice inverse
valeur = ((matrice(1, 1) * matrice(2, 2)) - (matrice(2, 1) * matrice(1, 2))) / Determinant
Dim valeur1 As Double
valeur1 = -((matrice(1, 0) * matrice(2, 2)) - (matrice(2, 0) * matrice(1, 2)) / Determinant)
Dim valeur2 As Double
valeur2 = +((matrice(1, 0) * matrice(2, 1)) - (matrice(2, 0) * matrice(1, 1)) / Determinant)
Dim valeur3 As Double
valeur3 = -((matrice(0, 1) * matrice(2, 2)) - (matrice(2, 1) * matrice(0, 2)) / Determinant)
Dim valeur4 As Double
valeur4 = +((matrice(0, 0) * matrice(2, 2)) - (matrice(2, 0) * matrice(0, 2)) / Determinant)
Dim valeur5 As Double
valeur5 = -((matrice(0, 0) * matrice(2, 1)) - (matrice(2, 0) * matrice(0, 1)) / Determinant)
Dim valeur6 As Double
valeur6 = +((matrice(0, 1) * matrice(1, 2)) - (matrice(1, 1) * matrice(0, 2)) / Determinant)
Dim valeur7 As Double
valeur7 = -((matrice(0, 0) * matrice(1, 2)) - (matrice(1, 0) * matrice(0, 2)) / Determinant)
Dim valeur8 As Double
valeur8 = +((matrice(0, 0) * matrice(1, 1)) - (matrice(1, 0) * matrice(0, 1)) / Determinant)

'//Affichage m-1
Console.WriteLine("Voici la matrice inverse:")
For i As Integer = 0 To 3
Console.WriteLine("")
Console.WriteLine("t = " & valeur & " t = " & valeur3 & " t = " & valeur6)
Console.WriteLine("t = " & valeur1 & " t = " & valeur4 & " t = " & valeur7)
Console.WriteLine("t = " & valeur2 & " t = " & valeur5 & " t = " & valeur8)
Console.WriteLine("")
Next
End Sub
End Module

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.