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

Array zusammenbauen mit unnötigen for-Schleifen?

 

Axel

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.01.2011, 20:04     Titel: Array zusammenbauen mit unnötigen for-Schleifen?
  Antworten mit Zitat      
Hallo,

ich habe ein kleines Problem. Ich habe 5 for-Schleifen ineinander geschachtelt um einen Versuchsplan zu erstellen.
Dieser Plan sieht vor sämtliche Versuche mit 5 Versuchskriterien durchzuführen. Jedes Kriterium ist entweder 0 oder 1 und damit wird entscheiden ob die Spalte eines Arrays verwendet wird oder nicht.

Beispiel: Der Versuchsarray hat 5 Spalten und in meine berechnung sollen nun die Spalten 1 und 2, 3, 4 rein. Wie setze ich das um. Meine Bisherige Lösung gefällt mir gar nicht:
Code:

for T_Schalter = 0:1
    if T_Schalter == 1
        Array = B(1,:);
    end
    for WT_Schalter = 0:1
        if WT_Schalter == 1 && isempty(Array)
            Array = B(2,:);
        else
            Array = [Array ; B(2,:)];
        end
       
        for TT_Schalter = 0:1
            if TT_Schalter == 1 && isempty(Array)
                Array = B(3,:);
            else
                Array = [Array ; B(3,:)];
            end
           
            for JT_Schalter = 0:1
                if JT_Schalter == 1 && isempty(Array)
                    Array = B(4,:);
                else
                    Array = [Array ; B(4,:)];
                end
               
                for PP_Schalter = 0:1
                   
                    if PP_Schalter == 1 && isempty(Array)
                        Array = B(5,:);
                    else
                        Array = [Array ; B(5,:)];
                    end
                   
%Berechnung mit Array durchführen                                                    

                end
            end
        end                                            
    end
end

 


Habt ihr eine bessere Lösung und vor allem effektivere Lösung?

Gruß
Axel


_Peter_
Moderator

Moderator


Beiträge: 537
Anmeldedatum: 08.12.10
Wohnort: ---
Version: 7.10, 2010a
     Beitrag Verfasst am: 21.01.2011, 11:52     Titel:
  Antworten mit Zitat      
Hallo Axel,
geht es jetzt um Spalten oder Zeilen? Du schreibst zwar, dass es um Spalten geht aber laut deinem Code werden Zeilen ausgewählt.

Zum anderen versteh ich den Sinn nicht so ganz. Laut deinem Code werden alle Möglichkeiten ins Array geschrieben weil du beide Schalterstellungen durchgehst, ist das so gedacht?
Das steht in meinen Augen im Wiederspruch zu:
Zitat:

...damit wird entscheiden ob die Spalte eines Arrays verwendet wird oder nicht.

Ich habe mal ein Bild im Anhang wo ich das mal durchgeführt habe und ich frage mich ob das so gedacht war. Deine Beschreibung lässt auf anderes vermuten muss ich gestehen.

Arrays.JPG
 Beschreibung:

Download
 Dateiname:  Arrays.JPG
 Dateigröße:  28.19 KB
 Heruntergeladen:  383 mal

_________________

Gruß
Peter
_________________
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht? Oder der MATLAB Hilfe?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Axel

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.01.2011, 13:01     Titel: Lösung
  Antworten mit Zitat      
Hallo,
ich hatte noch ein paar Fehler in der Programmierung Wink

Ich habe es nun anderweitig gelöst:

Code:


for T_Schalter = 0:1    
    if T_Schalter == 1
        T_Spalte = 1;
    else
        T_Spalte=[];
    end
   
    for WT_Schalter = 0:1
        if WT_Schalter == 1
            WT_Spalte = 2;
        else
            WT_Spalte=[];
        end
            Wahl_Spalten = [T_Spalte, WT_Spalte]
   end
end

 


So gibt er mir einen Array aus, der alle Varianten enthält die ich brauche Smile

Gruß und Dank!
 
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.