Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Habe mal Zeit und will mich mit den Array- und Clusterfunktionen anfreunden.
Zu diesem Zweck hab ich ein kleines Vi gebastelt, das Zufallswerte erzeugt und die Häugigkeit in einem 1-D-Array ablegt.
Dazu inkrementiere ich einfach die Zahl an Position Array(i), i=Zufallszahl.
Bei den Arrayfunktionen habe ich keine Funktion gefunden, die das in einem Schritt erlaubt. Oder ...?
Also mach ich das in 3 Schritten.
- Über Index Array Wert an Position i auslesen
- Wert inkrementieren
- Wert mit mit Replace Array Subset (Teilarray ersetzen) zurückschreiben.
Ja, mit der "In Place Element Structure". Und natürlich mit Shift-Register, damit man sich Sequenz und Lokale Variablen spart! I32 langt ebenfalls für Histogramm (vgl. dimitri84)
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Das Histogramm ist weniger das Problem, was ich zu lösen versuche. War nur eine Übung um ein Feeling mit dem Umgang von Arrays zu kriegen.
In der Hauptsache geht es um den Zugriff (Auslesen und Ändern) auf die Elemente des Arrays. Trotzdem Danke für den Tipp, probiere ich auch gleich mal aus.
Mich hat gewundert, dass ich den Vorgang in mehreren Schritten machen muss (wie ich oben beschrieben habe) und nicht einfach wert(i) := wert(i) + 1
@Jens G
Kannst Du das Vi hochladen, ich kann die Symbole und die Funktionen nicht zuordnen.
' schrieb:Mich hat gewundert, dass ich den Vorgang in mehreren Schritten machen muss (wie ich oben beschrieben habe) und nicht einfach wert(i) := wert(i) + 1
Auch dieses hier sind drei Schritte: Array indizieren, den Wert um 1 erhöhen und den neuen Wert im Array ersetzen.
Alles nur eine Frage des Standpunktes.
Das mit dem Implacement entspräche im übrigen wert(i)+=1;
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
' schrieb:@Jens G
Kannst Du das Vi hochladen, ich kann die Symbole und die Funktionen nicht zuordnen.
Beim Nachbauen lernst du mehr...
Die In Place Struktur findest du hier:
Schieberegister weißt du hoffentlich! (Rechtsklick auf Rahmen -> Create -> Shift-Register).
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
@Jens G:
Ohne die Beschreibung hätte ich die In Place Strucktur nie gefunden. Wäre überhaupt nicht auf eine Idee gekommen, wozu man die einsetzen kann.
Habe die Lösung mit In Place nachgebaut. Es sieht einfach elegant aus und erweckt den Eindruck resourcenschonender zu sein.
Ja ich weiß, das ist ja alles nicht mehr so nötig. Aber wenn man mal mit Bit und Byte und Taktzyklen knausern musste, dann hat man eine Neigung zu schlanken, aber nicht unbedingt besseren, Lösungen.
Das Histogramm habe ich auch mal eingebaut. Ist natürlich viel einfacher. Doch mein Ziel ist es mehr Routine im Umgang mit Array und Clustern zu kriegen.
Vielen Dank für eure Hilfe
JoBlau
23.12.2009, 11:03 (Dieser Beitrag wurde zuletzt bearbeitet: 24.12.2009 01:00 von dimitri84.)
' schrieb:Das Histogramm habe ich auch mal eingebaut. Ist natürlich viel einfacher. Doch mein Ziel ist es mehr Routine im Umgang mit Array und Clustern zu kriegen.
Ich hab' das schon verstanden was deine Absicht war. Meine erste Antwort eher als Spaß gedacht.
Ich kann das im Übrigen sehr gut nachvollziehen, dass einem am Anfang der Umgang mit arrays so seine Schwierigkeiten bereitet.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)