J'ai développé ce petit programme pour aller plus vite dans la résolution des problèmes d'algèbre linéaires.
Il permet donc :
_ d'encoder une matrice
_ multiplier 2 matrices
_ calculer le déterminant (Bezout => Sarrus)
_ inverser une matrice (en divisant par le déterminant la transposée de la matrice des cofacteurs)
_ multiplier une matrice par un réel
_ calculer une puissance de matrice
_ échelonner une matrice (pivot de Gauss)
_ Sommer 2 matrices
_ Résoudre un système homogène (n équ à n inc) (par Cramer)
_ Transposer une matrice
_ Visualiser une matrice en mémoire
Toute les matrices sont numérotées, toute matrice obtenue après calcul est mémorisée.
Plutôt que d'avoir des matrices avec des coefficients double super longs, il préfèrera utiliser un réel multiplicateur devant la matrice
Inclu un calcul du pgcd par l'algorithme d'Euclide pour l'échelonnement dans la classe matrice
Conclusion :
Veuillez me signaler tout bug trouvé. Je l'ai développé très vite donc il n'est certainement pas parfait.
Désolé, j'ai pas tout commenter. Je le ferai peut être plus tard.
La classe exécutable est Matprog
L'échelonnement et le determinant utilise l'appel d'une méthode par elle-même.
Dans la classe matrice il y a une série de méthode faisant des petites opérations nécessaires aux autres opérations sur les matrice.
Voilà, c'est le premier code qui soit intéressant pour tout le monde que je développe. Merci de me faire part de vos impressions :-)
25 avril 2005 à 11:58
Impossible d'executer les progs ?
Faut-il créer une applet ( j'utilise Mozilla 1.7.3) ?
Version de Java :
C:\java -version
java version "1.4.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-b92)
Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode)
25 avril 2005 à 18:28
Donc tu ouvres une invit MS-Dos, tu te positionnes dans le dossier où se trouvent les classes compilées et tu tape : "java Matprog"
25 avril 2005 à 19:47
C:\WINDOWS\Bureau\Progs_Java\Operat_Matrices
C:\WINDOWS\Bureau\Progs_Java\Operat_Matrices>java MatProg
Exception in thread "main" java.lang.NoClassDefFoundError: MatProg (wrong name:
Matprog)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:509)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
3)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:246)
at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
at java.lang.ClassLoader.loadClass(ClassLoader.java:262)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:322)
C:\WINDOWS\Bureau\Progs_Java\Operat_Matrices>
21 sept. 2008 à 20:13
26 mai 2010 à 17:52
Un très bon code, juste une petite imperfection sur l'inversion des matrices : les matrices carrées ne sont pas les seules à être inversibles donc, pas besoin de lever une exception si ligne!= colonne.
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.