|
|
Suche die nächste besetzte Position in einem Array |
|
Shanox |
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 15.08.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.09.2018, 17:33
Titel: Suche die nächste besetzte Position in einem Array
|
|
|
|
|
Hallo zusammen,
ich habe einen Array, der an manchen Stellen leer ist und an manchen Stellen eine Matrix enthält. Jetzt soll zufällig auf ein Element des Arrays zugegriffen werden.
Wenn der Array an diesem Platz leer ist, soll in der selben Spalte in der Zeile darüber und der Zeile darunter geschaut werden, ob ein Element vorhanden ist. Ist auch dort kein Element vorhanden, soll in den 2 Zeilen drüber, bzw. darunter gesucht werden. Dies soll so lange durchgeführt werden, bis in der selben Spalte ein Element gefunden worden ist. Wird ein Element gefunden, dass nicht leer ist, soll der entsprechende Platz im Array auf einer Variable gespeichert werden.
Sollte die gesamte Spalte leer sein, so soll in den umliegenden Spalten gesucht werden.
Da es schwer zu verstehen ist, versuche ich es gleich nochmal in anderen Worten zu erklären:
Ich wähle zufällig ein Element aus, z.B. Zeile x Spalte y. Ich suche zuerst in der Spalte y nach dem Element, dass nicht leer ist und den geringsten Zeilenabstand zu dem Element am Platz (x,y) aufweist.
Ist die gesamte Spalte leer, soll in der Spalte rechts daneben (y+1) und links daneben (y-1) gesucht werden. Auch hier soll mit der Suche in der Zeile x bekommen werden.
Ich wollte das Problem über eine if schleife mit der Abfrage if isempty(Array) lösen, komme aber auf keinen sinnvollen Code. Kann mir jemand helfen?
Grüße Shanox
|
|
|
|
|
J0nas |
Forum-Century
|
|
Beiträge: 208
|
|
|
|
Anmeldedatum: 10.09.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ab 2016a
|
|
|
|
|
|
Verfasst am: 21.09.2018, 03:53
Titel:
|
|
Hallo Shanox,
Noch eine kurze Frage:
Was soll passieren wenn 2 Einträge genau gleich weit entfernt sind?
Grüße
Jonas
_________________
1.) Ask Google & Matlab Documentation
2.) Ask gomatlab.de & Technical Support of MathWorks
3.) Go mad, your problem is unsolvable
|
|
|
Shanox |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 15.08.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.09.2018, 08:19
Titel:
|
|
Hallo Jonas.
Danke für die Antwort.
Dann soll zufällig ein Element gewählt werden, oder es soll generell das Element unterhalb oder oberhalb ausgewählt werden. Das ist ziemlich egal.
Grüße Shanox
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 24.09.2018, 10:51
Titel: Re: Suche die nächste besetzte Position in einem Array
|
|
Hallo Shanox,
Wie sehen Deine Inputs aus? Meinst Du ein Cell-Array? Denn andere Arrays können keine Matrizen oder leere Elemente enthalten.
Zitat: |
Wird ein Element gefunden, dass nicht leer ist, soll der entsprechende Platz im Array auf einer Variable gespeichert werden. |
Das ist auch noch nicht klar.
Kannst Du ein Beispiel für Inputs und Outputs angeben?
Gruß, Jan
|
|
|
Shanox |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 15.08.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.09.2018, 14:38
Titel:
|
|
Danke für eure Antworten!
Ich konnte das Problem mittlerweile selbst lösen
Grüße, Shanox
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|