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

Mehrere Zahlen kombinieren

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.08.2010, 15:32     Titel: Mehrere Zahlen kombinieren
  Antworten mit Zitat      
HI LEUTE. HOFFE ES IST VERSTÄNDLICH

Ich habe zb 9 unterschiedliche Zahlen: a1, a2, a3, b1, b2, b3, c1, c2 und c3.

ich möchte das matlab mir automatisch diese Zahlen kombiniert und in einer matrix speichert. Dabei darf ein Buchstabe nur einmal in einer Gruppe auftauchen:

c1 b1 a1
c1 b1 a2
c1 b1 a3
c1 b2 a1
c1 b2 a2
c1 b2 a3
c1 b3 a1
c1 b3 a2
.
.
.
c3 b2 a2
c3 b2 a3
c3 b3 a1
c3 b3 a2
c3 b3 a3


DANKE!


Fourier
Forum-Guru

Forum-Guru


Beiträge: 329
Anmeldedatum: 05.04.10
Wohnort: Karlsruhe
Version: 2009b
     Beitrag Verfasst am: 12.08.2010, 15:41     Titel:
  Antworten mit Zitat      
Hallo

so?
Code:

M=perms([1 2 3 4]);
 


gruss
_________________

Ein schlechter General ist besser als zwei gute.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.08.2010, 16:01     Titel:
  Antworten mit Zitat      
NICHT GANZ Smile

(Dabei darf ein Buchstabe nur einmal in einer Gruppe auftauchen) hier muss ich noch hinzufügen, dass der Buchstabe seine Spalte auch nicht verlassen darf.

Bei deiner Lösung ist das nicht der Fall, aber das kannst du ja auch nicht wissen, weil ich es nicht erwähnt habe.

4 1 3 2 % Deine Lösung
3 4 2 1
%%%%%%%%%%%%%%%%%%
D4 C1 B3 A2 % Meine Vorstellung
D3 C4 B2 A1
.
.
.
 
Fourier
Forum-Guru

Forum-Guru


Beiträge: 329
Anmeldedatum: 05.04.10
Wohnort: Karlsruhe
Version: 2009b
     Beitrag Verfasst am: 12.08.2010, 16:12     Titel:
  Antworten mit Zitat      
Hallo,
Zitat:

Ich habe zb 9 unterschiedliche Zahlen


jetzt bin ich total verwirrt, sinds jetzt buchstaben oder Zahlen?
ich kanns mir mit zahlen nur schwer vorstellen, wenn keine zahl ihre spalte verlassen darf :?

wäre schön wenn du ein beispiel mit 3 zahlen machst? oder sinds jetzt numerierte buchstaben?

gruss
_________________

Ein schlechter General ist besser als zwei gute.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.08.2010, 16:19     Titel:
  Antworten mit Zitat      
Also, ich hab dir ein bsp mit c1 b1 a1 usw gegeben.
deine antwort ist aber mit zahlen 1 2 3 4, ich glaube darin liegt das problem.
ich werde mal konkreter, zb:

A=[0,1 0,2 0,3]
B=[23 33 43]
C=[1000 2000 3000]

0,1 23 1000
0,1 23 2000
0,1 23 3000
0,1 33 1000
0,1 33 2000
0,1 33 3000
0,1 43 1000
0,1 43 2000
.
.
.
0,3 43 3000

weder die kleinen, noch die mittleren, noch die großen Zahlen verlassen Ihre Spalte...
 
Fourier
Forum-Guru

Forum-Guru


Beiträge: 329
Anmeldedatum: 05.04.10
Wohnort: Karlsruhe
Version: 2009b
     Beitrag Verfasst am: 12.08.2010, 16:29     Titel:
  Antworten mit Zitat      
hättest du am anfang so geschrieben:

ich hab zb 9 unterschiedliche zahlen :
c(1) c(2) c(3) a(1) a(2) a(3)....

hätte ich deine frage richtig verstanden ;)

ich hab das problem jetzt verstanden .
_________________

Ein schlechter General ist besser als zwei gute.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2010, 10:11     Titel:
  Antworten mit Zitat      
hoffe mir kann geholfen weren:)
 
Fourier
Forum-Guru

Forum-Guru


Beiträge: 329
Anmeldedatum: 05.04.10
Wohnort: Karlsruhe
Version: 2009b
     Beitrag Verfasst am: 13.08.2010, 11:06     Titel:
  Antworten mit Zitat      
Hallo,

ich hab deine vektoren als matrix angeordnet,
c1...c5 in erste reihe zumbeispiel
b1...b5 in 2.reihe... usw

ergebnis in V, hoffe es stimmt diesmal ;)
Code:

clear all

A=[1 2 3 4 5;
10 20 30 40 50;
100 200 300 400 500];

x=size(A,2);
y=size(A,1);  %anzahl der vektoren
xy=x^y;

for ii=1:y
    V(:,ii)=reshape(repmat(A(ii,:),x^(ii-1),x^(y-ii)),1,xy);
end
 


gruss
_________________

Ein schlechter General ist besser als zwei gute.
Private Nachricht senden Benutzer-Profile anzeigen
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 13.08.2010, 13:20     Titel:
  Antworten mit Zitat      
Schau mal hier nach:
http://www.gomatlab.de/alle-moeglic.....en-durchgehen-t13730.html

Dein Problem klingt für mich
1. nach Permutation mit Wiederholung
2. nach einem Problem das man mittels geschickter Indizierung ohne Schleifen lösen kann.

Code:

A=[1 2 3];
B=[10 20 30];
C=[100 200 300];

%Permutation der Indizes
ind=[1 2 3];
    N=3;

    [Y{N:-1:1}] = ndgrid(ind) ;
    Y = reshape(cat(N+1,Y{:}),[],N) ;

%Ergebnismatrix
M=[A(Y(:,1))', B(Y(:,2))',C(Y(:,3))'];
disp(M)


 

_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.08.2010, 13:34     Titel:
  Antworten mit Zitat      
Dein Titel Forum-Guru sollte hochgestuft werden Smile

Danke!!!
 
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.