WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Inverse bilden und Test ob Inverse Brüche enthält

 

mini1983
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 30.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.06.2009, 20:54     Titel: Inverse bilden und Test ob Inverse Brüche enthält
  Antworten mit Zitat      
Hey ihr Lieben,
ich muss mit Matlab ein Programm schreiben, dass eine zufällige Matrix erzeugt, die Inverse von dieser Matrix bildet, testet ob die Einträge in der Inversen ganzzahlig sind bzw Büche enthält. Die Matrix dann ausgibt damit der Benutzer die Inverse selbst berechnen kann und dann die Eingabe des Benutzers kontrolliert.
Einen Anfang habe ich gemacht. Komme aber beim testen auf Brüche nicht weiter.
Wär echt super wenn mir da jemand weiterhelfen kann.
Ich hab hier mal meinen Quelltext.

function C=Matrizeninversion()
% Matrix erzeugen
C=fix(rand(4)*9)

% Testen ob invertierbar
while abs det(C)<10^-10
c=fix(rand(4)*9)
end;

% Bilden der Inverse
D=inv(C)

% Testen ob die Einträge der Inversen ganzzahlig sind
if all(D==round(D)),

% Testen ob sie Brüche enthält, Nenner zwischen 1 und 9
if.....?????

Hier starten nun meine Probleme.
Zum einen wie teste ich ob die Inverse Brüche enthält?
Zum anderen wenn die Tests auf Ganzzahligkeit bzw Brüche mit Nenner zwischen 1 und 9 negativ ausfällt, soll wieder eine neue Matrix erzeugt werden und die vorherigen Schritte wiederholt werden. Binde ich die Tests so ein dass die neue Matrix wieder alle Test durchlaufen muss?

Vielen Dank schon mal für eure Hilfe!
mini
Private Nachricht senden Benutzer-Profile anzeigen


Bane
Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 09.06.09
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 30.06.2009, 23:45     Titel:
  Antworten mit Zitat      
Das müsste gehen:

Code:
if(any(any(kron([5:9],D)==round(kron([5:9],D)))))
    disp('Brüche mit Nenner zwischen 1 und 9 enthalten')
else
    disp('KEINE Brüche mit Nenner zwischen 1 und 9 enthalten')
end


Hilft Dir das weiter?

Gruß, Bane
Private Nachricht senden Benutzer-Profile anzeigen
 
mini1983
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 30.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.07.2009, 10:17     Titel:
  Antworten mit Zitat      
Ja vielen dank! Das hilft mir weiter. Very Happy


Nun muss ich mir überlegen wie ich die tests so einbau, dass, wenn sie negativ ausfallen, wieder eine neue Matrix erzeugt wird, die alle Tests durchläuft.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.