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

2 fragen

 

michael123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.01.2013, 17:00     Titel: 2 fragen
  Antworten mit Zitat      
hey

ich habe zwei fragen

wie kann ich meine matrix in eine binärmatrix umwandeln?

also wenn zB

1 0 6 5
2 3 4 0

in

1 0 1 1
1 1 1 0

und kann man dann auch zeilenweise vergleiche anstellen?

zB. von meiner binärmatrix
zeile 1 spalte 1=1
zeile 2 spalte 2=1
dann hätte ich gerne immer eine weitere zeile hinzugezählt und wieder die
zeilen verglichen.
zeile 1 spalte 1+2=1
zeile 2 spalte 1+2=2
und so weiter!

wie programmmier ich das?

glg michael


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 21.01.2013, 17:12     Titel:
  Antworten mit Zitat      
Code:

A=[1 0 6 5; 2 3 4 0]
A>0
 


Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
michael123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.01.2013, 18:22     Titel: 2Fragen
  Antworten mit Zitat      
Andreas Goser hat Folgendes geschrieben:
Code:

A=[1 0 6 5; 2 3 4 0]
A>0
 


Andreas


danke für die antwort

und zu meiner zweiten frage hab ichs jetzt sehr kompliziert programmiert
geht das einfacher?
zB für eine 2x2 matrix
Code:
A=[1 1 ;1 0]

b=A(1,1)
c=A(2,1)
if b>=c
    x=x+1
und stop
elseif
    b=A(1,1)+A(1,2)
    c=A(2,1)+A(2,2)
    if b>=c
    x=x+1
und stop
    end
end
 



nur ich hätte das gern flexibel nach der länge der zeilen
und wie kann ich eine if funktion stoppen? ich weiß mit und stop geht das nicht! ist nur um zu zeigen was ich will!

glg michael
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 21.01.2013, 18:23     Titel: Re: 2 fragen
  Antworten mit Zitat      
Hallo Michael,

Die zweite Frage verstehe ich nicht.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
michael123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.01.2013, 18:30     Titel: Re: 2 fragen
  Antworten mit Zitat      
Jan S hat Folgendes geschrieben:
Hallo Michael,

Die zweite Frage verstehe ich nicht.

Gruß, Jan


zu meiner zweiten frage hab ichs jetzt sehr kompliziert programmiert
geht das einfacher?
zB für eine 2x2 matrix
Code:
A=[1 1 ;1 0]

b=A(1,1)
c=A(2,1)
if b>=c
x=x+1
und stop
elseif
b=A(1,1)+A(1,2)
c=A(2,1)+A(2,2)
if b>=c
x=x+1
und stop
end
end
 



nur ich hätte das gern flexibel nach der länge der zeilen
und wie kann ich eine if funktion stoppen? ich weiß mit und stop geht das nicht! ist nur um zu zeigen was ich will!

glg michael
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.01.2013, 22:29     Titel:
  Antworten mit Zitat      
Hallo michael,

die Frage wird nicht verständlicher wenn man sie zweimal stellt.
die Frage wird nicht verständlicher wenn man sie zweimal stellt.

if hört automatisch beim passenden else oder end auf. Ein stop ist nicht
nötig.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 21.01.2013, 23:10     Titel: Re: 2 fragen
  Antworten mit Zitat      
Hallo michael,

Was soll der Code genau machen?
Nach einem "elseif" muss unbedingt eine Bedingung kommen. Meinst Du "else"?

Zitat:
nur ich hätte das gern flexibel nach der länge der zeilen

Von welcher Zeile sprichst Du hier?

Zitat:
und wie kann ich eine if funktion stoppen?

Man kann eine IF-Funktion nicht stoppen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
michael123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.01.2013, 08:55     Titel: Re: 2 fragen
  Antworten mit Zitat      
Jan S hat Folgendes geschrieben:
Hallo michael,

Was soll der Code genau machen?
Nach einem "elseif" muss unbedingt eine Bedingung kommen. Meinst Du "else"?

Zitat:
nur ich hätte das gern flexibel nach der länge der zeilen

Von welcher Zeile sprichst Du hier?

Zitat:
und wie kann ich eine if funktion stoppen?

Man kann eine IF-Funktion nicht stoppen.

Gruß, Jan


hallo jan

also der code soll das machen

er soll die binärmatrix hernehmen zB.

1 0 1 0
1 0 0 1

dann soll er in die erste zeile gehen und das erste element nehmen und vergleichen ob es größer ist als das erste element in der zweiten zeile.
wenn nein dann zählen zB. i=i+1
wenn ja dann soll er in die erste zeile gehen und die ersten zwei elemente nehmen und schaun ob sie größer sind als die zwei in der zweiten zeile
wenn nein dann i=i+1
ansonsten die ersten drei usw. bis die matrix aus ist
wenn das überall der fall ist dann
j=j+1

es soll schaun ob die erste zeile die zweite dominiert!!

glg michael
 
michael123

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.01.2013, 20:59     Titel: if abfrage verkürzen
  Antworten mit Zitat      
A=[1 1 1 ;1 0 1]

b=A(1,1)
c=A(2,1)
if b>c
x=x+1

else
b=A(1,1)+A(1,2)
c=A(2,1)+A(2,2)
if b>c
x=x+1
else
b=A(1,1)+A(1,2)+A(1,3)
c=A(2,1)+A(2,2)+A(2,3)
if b>c
x=x+1
else y=y+1
end
end
end

Also so sollte es ausschaun für eine 2x3 Matrix.
ich möchte das ganze variable für 2xi Matrix

versteht das jetzt jemand??

glg michael
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.01.2013, 22:25     Titel:
  Antworten mit Zitat      
Code:
a=all(cumsum(A(1,:))<=cumsum(A(2,:)));
x=x+(1-a);
y=y+a;
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 - 2025 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.