LabVIEWForum.de - Array auf gleiche Zeilen durchsuchen

LabVIEWForum.de

Normale Version: Array auf gleiche Zeilen durchsuchen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Dustin,

Zitat:VI anhängen darf ich leider nicht, da ich mit gekauften (und vom Hersteller passwortgeschützten) VIs arbeite.
Wie bitte? Wo in deinem Bild oben sind irgendwelche zugekauften und passwortgeschützten VIs?
Hmm

Nochmal: ich habe keinen Bock, dein VI nachzuprogrammieren. Wenn DU einen Fehler behoben haben willst, dann solltest DU ein (Beispiel-)VI bereitstellen. NIEMAND verlangt irgendwelche geheimen Bestandteile deines Projektes!

Zitat:Ich möchte, dass wenn der Vergleich der beiden Arrays True ist, also die gleiche Zeile noch einmal vorkommt, dass diese gelöscht wird und der Zähler in dieser Zeile an der 9. Stelle um einen hochgezählt wird.
Wenn ich deine Grammatik richtig deute, dann löscht du erst eine Zeile, willst dann aber trotzdem in der gelöschten Zeile ein Element verändern???

Zitat:Das mit dem Löschen klappt problemlos, nur zählt er komplett willkürlich hoch.
Dagegen hilft debuggen!

Zitat:Kann ich überhaupt aus der Schleife die Bedingung für meine Case-Struktur ziehen?
Es fehlt dein aktuelles VI (oder wenigstens ein Bild), um diese Frage zu verstehen?
Warum soll man eine Bedingung aus der Schleife ziehen, wenn die Case-Struktur in der Schleife ist?
Das ist ja nicht das ganze Programm.. Davor kommt noch ein ziemlich großer, für die Frage aber unwichtiger Teil.
Ich hab den wichtigen Teil mal rauskopiert, der so natürlich nicht funktioniert, weil die Arrayquelle ja fehlt, aber vielleicht kann man meinen Fehler da doch schon erkennen.Confused

Gruß Dustin
(11.08.2015 13:52 )GerdW schrieb: [ -> ]
Zitat:Ich möchte, dass wenn der Vergleich der beiden Arrays True ist, also die gleiche Zeile noch einmal vorkommt, dass diese gelöscht wird und der Zähler in dieser Zeile an der 9. Stelle um einen hochgezählt wird.
Wenn ich deine Grammatik richtig deute, dann löscht du erst eine Zeile, willst dann aber trotzdem in der gelöschten Zeile ein Element verändern???
Damit meine ich, dass wenn ich 2 (oder mehrere) gleiche Zeilen habe, die 2. gelöscht wird und in die erste Zeile an die 9. Stelle geschrieben wird, wie oft diese Zeile schon vorkam
Hallo Dustin,

Zitat:Ich hab den wichtigen Teil mal rauskopiert
Warum nicht gleich so?

Zitat:der so natürlich nicht funktioniert, weil die Arrayquelle ja fehlt
Da könntest du mit einer Arraykonstanten mit Beispielwerten nachhelfen…

Zitat:aber vielleicht kann man meinen Fehler da doch schon erkennen.
- Du nutzt nur das Ergebnis des letzten Vergleichs für deine Case-Struktur: der Tunnel ist auf "letzter Wert" gesetzt
- wenn dein Eingangsarray nur 8 Spalten hat, ist es wenig sinnvoll, ein Element aus der 9. Spalte indizieren zu wollen
- wenn du immer wieder an der 9. Spalte einfügen willst, werden die davor geschriebenen Werte nach hinten geschoben: du fügst ja immer wieder ein neues Element ein: ich hatte ein "ersetzen" vorgeschlagen
- deine Arraykonstante vor der FOR-Loop hat den falschen Datentyp: DBL wäre sinnvoller
- deine Whileloop stoppt nur bei einem leeren Array. Wenn die Zeilen im Array ungleich sind und dein Array mehr als nur eine Zeile hat, kann es passieren, dass die Loop nie stoppt…

Lösung:
Wenn du zählen willst, wie oft die Zeile gelöscht wird, dann solltest du das in deiner FOR-Loop machen: genau dort, wo die Zeilen "gelöscht" (bzw. nicht übernommen) werden!
[attachment=53815]
Okay, vielen Dank erstmal für deine Hilfe!!
Ich schau morgen nochmal drüber, hab gerade keine Nerven mehr für LabVIEW. Undecided
Seiten: 1 2
Referenz-URLs