Hallo Rätselanhänger und Co,
es ist mal wieder WE und ich habe mir wieder was ausgedacht, bzw. geklaut...
In diesem Rätsel sind keine Regeln vorgesschrieben, jeder darf alles machen und posten - es soll nur schön und effizient sein.
Vorgaben FP:
1 numerische Eingabe
1 Stringeingabe
1 Stringausgabe
das wars schon...
Es soll folgende Aufgabe gelöst werden:
Es wird eine Zahl und ein String eingegeben, z.B.: 3 + ABBAASSW
Die Zahl sagt aus, die ersten wieviele unterschiedlichen Buchstaben ausgegeben werden sollen - hier 3, also: ABS
Wenn die Zahl 4 wäre: ABSW
Wenn die Zahl 5 wäre: ERROR, da keine 5 unterschiedlichen Buchstaben vorliegen
Ich hoffe es ist alles klar geworden, ich wünsche viiiiiiel Spaß!
Hallo!
So, jetzt habe ich mal meinen Erstentwurf gemacht...:(Habe das Gefühl, das würde auch deutlich einfacher gehen...
Finde ich gerade bloß das VI "gleiche Elemente aus Array entfernen" nicht? Hmmm...
[
attachment=5426]
[
attachment=5427]
Gruß!
Sollen wir mal nen performance-Vergleich machen?
Flache Sequenz, 1.aktuellen Timer, 2.Rätselprogramm, 3.aktuellen Timer, Ausserhalb Sequenz die Zeiten voneinander abziehen!?!
Wo sieht man eigentlich den "Spitzenarbeitsspeicherbedarf" des VIs..?
Gruß
Performance-Vergleich: Gerne!
Zum Thema Speicherbedarf: Schau mal im Pulldownmenu unter Tools->Profile nach.
MfG, Jens
So, hier die ersten Tests.
Aber zuerst ein Hinweis zu Version 2 von Mr.T: Die musst du nochmal genau anschauen, z.B. liefert die Eingabe AA und 1 als Ausgabe ERROR.
Trotzdem hier die Resultate (ohne Zahlen), gemessen mit dem Profile-Monitor von LV, der Sourcecode wurde jeweils in eine For-Schleife gepackt, die 5000mal ausgeführt habe.
Version2 von Mr.T ist am schnellsten, Version 1 und meine Version sind ungefähr gleichschnell mit leichten Vorteilen für Mr.T
Memory-mässig liegt meine Version vorne, vor Version2 von Mr. T und Version1.
MfG, Jens
P.S.: OK, hier ein Nachtrag:
1. Eine neue Version von mir, diesmal String-basiert:
[
attachment=5954]
[
attachment=5953]
Dann noch die neuen Timing-Werte:
[
attachment=5956]
ABBCAS1.vi ist Version 1 von Mr. T, ABBCAS3.vi ist die 1. Version von mir.
Somit gilt es momentan Version ABCCAS4.vi zu schlagen.
' schrieb:So, hier die ersten Tests.
Aber zuerst ein Hinweis zu Version 2 von Mr.T: Die musst du nochmal genau anschauen, z.B. liefert die Eingabe AA und 1 als Ausgabe ERROR.
Uuups...Feature - kein BUG
:DOkeoke...es gehört natürlich ein < und nuchit ein <= zum Case...
Super mit dem Profile Monitor...kannte ich garnicht...muss ich mal was drüber lernen...
Ich denke, diese Version ist schneller - aber das ist getrickst..war nicht wirklich ne neue Idee.. Bis ichs beweisen kann, poste ich´s mal!
[
attachment=5955]
[
attachment=5958]
Ich denke Du hast damit die beste Lösung gefunden, Jens! Hat jemand Einwände?
Gruß
P.S. was für eine Zeichenfolge hast Du für den Monitor eingegeben?
Also, hier wäre meine Lösung aus dem Bauch. Ich habe nich abgeguckt oder sowas, ich hatte nur keine Zeit es früher zu machen. Kann das Jens auf Performance testen? Die Tests müssen ja auf dem gleichen PC passieren.
Eugen
An alle: Nächster Test und Vergleich heute abend.
Vielleicht werden es bis dahin noch mehr Vorschläge.
MfG, Jens