INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

1. LVF-Rätsel



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!

17.03.2007, 11:58 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2007 12:01 von Mr.T.)
Beitrag #1

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
1. LVF-Rätsel
So, ich möchte mal was testen, um zu sehen wie es so bei Euch allen ankommt.Big Grin

Es folgt ein Rätsel, welches es mittels eines VIs zu lösen gilt. Für den anfang nichts schweres, es sollte in ein paar Minuten gelöst sein.

Regel: Ein VI muss gepostet werden, sobald es "unterboten" wurde.

Aufgabe: Umrechner ins römische Zahlensystem

Forderungen:

- Numerische Eingabe
- Stringausgabe
- Ein "Umrechner" unseres Zahlensystems in das römische
- es dürfen keine Cases verwendet werden
- für den Anfang reicht die Umrechnung bis 9999
- für den Anfang sollen nur

1000 = M
100 = C
10 = X
1 = I

dargestellt werden (später können D = 500 und L = 50 gerne dazu kommen)

Beispiel:

1984 = MCCCCCCCCCXXXXXXXXIIII (= MDCCCCLXXXIIII)


Meine Vorlage, die sicher zu schlagen ist, es gelten alle Drähte ausser Schleifeneintritte/-ausgänge:

3 VIs von der Palette
1 Konstante
3 Array Konstanten
3 Forschleifen
11 Drähte

VIEL SPAß!

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.03.2007, 12:51 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2007 14:03 von Lucki.)
Beitrag #2

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
1. LVF-Rätsel
Weiß nicht wie Du das genau rechnest, sicher ist nur, daß ich eine For_Schleife weniger habe, deshalb poste ichs mal...
   
Bin übrigen auch Orwell -Fan, daß ich 1948 statt 1984 eingegeben habe war nur ein Versehen.

Edit: Das oben war nur ein suboptimaler Schnellschuß, aber ich laß das mal so stehen. Noch besser ist diese Variante hier, die ich auch als VI anfüge:
   

Gruß Ludwig


Angehängte Datei(en)
Sonstige .vi  MrT_Aufgabe2.vi (Größe: 9,95 KB / Downloads: 290)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.03.2007, 14:38
Beitrag #3

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
1. LVF-Rätsel
Hallo,

ganz schön knifflig mit Deinen Einschränkungen. Wink
Ich habe mir überlegt externen Code (von Matlab oder C) einzubinden. Da gibt es ja schon Beispiele im Netz. Nur habe ich das irgendwie nicht hingekriegt. Blush
Da hätte ich dann 1 Funktion aus LabVIEW, 1 numerisches Element, 1 Stringelement und 2 Drähte. Das wäre dann nicht mehr zu unterbieten. Aber ich weiß nicht, wie ich C-Code einbinde, wenn ich ihn in einem Textfile habe.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.03.2007, 15:28
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
1. LVF-Rätsel
Ja, ich glaube die zweite Variante vom Ludwig ist optimal (wenn diese funktioniert, was ich nicht bezweifele).

Gruss, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.03.2007, 15:36 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2007 15:37 von Mr.T.)
Beitrag #5

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
1. LVF-Rätsel
Hehe, geht gut los.

Eigentlich sollte das VI erst gepostet werden, wenn es unterboten wird.
Zuzufügen wäre vielleicht noch mal auszutesten, welches VI den kleinsten Speicherbedarf und die kürzeste Ausführungszeit hat.

Gut! Also dann: Step2:

Einbinden der 500 (D) und 50 (L), um die Römische Zahl darzustellen. Und z.B. auch sowas als 2. Stringausgabe: 4 = IV 6 = VI...

Hehe

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.03.2007, 21:07 (Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2007 21:13 von Lucki.)
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
1. LVF-Rätsel
' schrieb:ganz schön knifflig mit Deinen Einschränkungen. Wink
Ich habe mir überlegt externen Code (von Matlab oder C) einzubinden. Da gibt es ja schon Beispiele im Netz. Nur habe ich das irgendwie nicht hingekriegt. Blush
Da hätte ich dann 1 Funktion aus LabVIEW, 1 numerisches Element, 1 Stringelement und 2 Drähte. Das wäre dann nicht mehr zu unterbieten. Aber ich weiß nicht, wie ich C-Code einbinde, wenn ich ihn in einem Textfile habe.

Die Einschränkung - kein case verwenden - ist willkürlich und nicht nachvollziehbar, aber echt blöd ist die fehlende Einschränkung, daß das Problem (- und nicht nur die Ein- und Ausgabe -) in der LabVIEW-Sprache G zu lösen ist. Ohne diese Einschränkung wird das im Sinne der Vorgabe optimale Ergebnis immer so aussehen wie Du sagtest, also also bei einer Aufgabe mit 1 Eingabe und 1 Ausgabe: 1 Bedienelement, gefolgt von einer Leitung, gefolgt von einem Code-Interface-Knoten, dann noch eine Leitung, hinführend zu 1 Anzeigeelement. Aber was hat das Ganze dann noch mit LabVIEW zu tun, oder bin ich hier im falschen Forum?

Gruß Ludwig
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.03.2007, 23:09 (Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2007 09:44 von Mr.T.)
Beitrag #7

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
1. LVF-Rätsel
Haha - Lucki, wer das Rätsel stellt, gibt die Regeln vorBig Grin!

Nachdem ich Dein VI gesehen habe (was ein grober Regelverstoss war, siehe oben!!Big Grin) fiel mir folgendes auf:
Du brauchst 3 Schieberegister (ich habe 2), und 3 VIs von der Palette (gleichviele), damit hast Du mich nicht schlagen können, somit ist Dein VI wieder raus, weil ich gerade eben optimiert habe und auch nur noch 2 Forschleifen brauche! Puh, hatte ich nochmal Glück!Big Grin


Aber das ganze ist jetzt mal das erste Experiment... ich denke ich hätte Schieberegister auch angeben müssen und dafür Drähte weglassen sollen... Und keine roten Punkte zulassen (Typenwandlungen!! Wobei ich einen habe...mistBig Grin)

Prinzipiell geht es bei diesem Rätsel auf keinen Fall um sauberes und schönes programmieren, sondern um harte Fakten, sprich nur und nur und nur die Anzahl verwendeter Programmierelemente. Zum Vergleich: in C++ würde man die Anschläge, also Zeichen des Codes zählen - was zugegeben einfacher ist, als bei uns mit LV...:DWenn es darum ginge, wäre Dein Vi sicher besser.

Achso, und weiter noch:
Auch das Einbinden externen Codes gehört zu einer Programmiersprache. So auch hier, nur wer´s nicht kann (Ahaaaa! Lerneffekt wg. Wettkampf) hat halt Pech - wer das bei seinen Forderungen aufzählt kann somit ja auch für den Ausschluss solcher Aktivitäten (wie bei mir die Cases) sorgen. Wer´s hinbekommt hat gewonnen und bekommt LV-Respekt Big GrinBig Grin!

Letztlich soll diese Rätselaktion nur Spaß machen und nicht zu unnötigen debatten über "Rätselvorschriftenblödsinn" führen. Es soll ja halt noch ein Rätsel bleiben...

So, jetzt fange ich dann auch mal mit dem optimieren an. Mal sehen, ob ich noch die ein oder andere Sache Rausschmeissen kannBig Grin.

Aktueller Stand:

- Es werden MDLX und I angezeigt. (1561 = MDLXI, 1441 = MCCCCXXXXI) Hier Link
- 2 Forschleifen
- 3 VIs von Palette
- 2 Schieberegister
- 4 Konstanten, davon 2 uninitialisiert und 3 Arrays

So, wer kann besser?


Hier die geschlagene Version:

   

Sonstige .vi  R_misch_beaten.vi (Größe: 11,66 KB / Downloads: 341)

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.03.2007, 10:39
Beitrag #8

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
1. LVF-Rätsel
' schrieb:Nachdem ich Dein VI gesehen habe (was ein grober Regelverstoss war, siehe oben!!Big Grin) fiel mir folgendes auf:
Du brauchst 3 Schieberegister (ich habe 2), und 3 VIs von der Palette (gleichviele), damit hast Du mich nicht schlagen können, somit ist Dein VI wieder raus, weil ich gerade eben optimiert habe und auch nur noch 2 Forschleifen brauche! Puh, hatte ich nochmal Glück!Big Grin

Wenn Du, ohne Dein VI zu posten, angesichts der gesehenen Postings nachoptimierst, so ist das vergleichbar mit einer öffentlichen Ausschreibung, bei der ein bevorzugter Mitbewerber die Angebote der anderen zu sehen kriegt, bevor er sein eigenes Angebot einreicht. Man nennt das dort Wirtschaftskriminalität. Aber Du gehst ja noch darüber hinaus. Stell Dir ein Spiel vor, in dem der, der zu dem Spiel eingeladen hat und gerade dabei ist zu verlieren, mitten im Spiel verkündet, die Regeln haben sich geändert. Genau so ist es, wenn Du jetzt plötzlich anfängst, die Schieberegister mit zu zählen.

Hier im Forum auch mal solche Aufgaben zu stellen, ist ein ein sehr gute Sache, und für dies Anregung gebührt Dir Dank. Es wäre aber dann besser, wenn sich der Aufgabensteller selbst zurücknimmt, d.h. mehr eine Moderatorfunktion übernimmt, und nicht mir vor keinem Mittel zurückschreckendem Ehrgeiz versucht, das Spiel selbst für sich zu entscheiden.

Gruß Ludwig
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.03.2007, 10:54 (Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2007 10:56 von Mr.T.)
Beitrag #9

Mr.T Offline
LVF-SeniorMod


Beiträge: 1.007
Registriert seit: Jun 2005

2009
2005
kA

88400
Deutschland
1. LVF-Rätsel
Hehe, nein, das möchte ich ja ganicht. bin doch kein krimineller!Big Grin

Mein ziel ist ja hier im Moment (Experimentierphase) erstmal herausfinden, welche Kriterien bei uns "nicht C++-lern" gezählt werden sollten.
Deshalb die Idee mit den Registern.

Wie seht Ihr das? Was sollte gezählt werden? Klar variiert das je nach Aufgabenstellung..und man vergisst dann auch mal was bei der Aufgabenstellung, was dann später doch noch dazukommen sollte...ist ja nicht der BND hierBig Grin

Bist Du der Meinung, wer mal ein VI gepostet hat, darf dann nicht mehr nachoptimieren, weil er Vorteile durch das einsehen anderer VIs hat? Das sollte die Regel mit dem Posting erst nach dem unterbieten genau bewirken. Deshalb auch immer meine Aufzählung der Elemente. Das zeigen des letzten VIs ist dann Ehrensache.

Findet Ihr so´ne Regel sinnvoll? Also, hier nun, um allem aus dem Weg zu gehen, meine oben erwähnte Lösung. Ausgehend von dieser Lösung könnten wir ja das Rätsel neu starten.


Sonstige .vi  R_misch.vi (Größe: 11,25 KB / Downloads: 316)


   

Mit einem freundlichen Wort und etwas Gewalt erreicht man viel mehr als nur mit einem freundlichen Wort. [...Marcus zu Lennier, B5]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.03.2007, 12:18 (Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2007 13:42 von Lucki.)
Beitrag #10

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
1. LVF-Rätsel
Also, wenn Du mich fragst: Keine Erbsenzählerei mit Schleifen und Drähten, kein Siegerehrung, Teamarbeit statt Wettbewerb. Jeder postet, so wie er will, kritisiert die Entwürfe der anderern und bessert sie nach. Zum Schluß stehen dann 1, 2 oder auch 3 gleichwertige Lösungen da, und jeder hat etwas dazugelernt. Und bitte weder für Lösungen noch für Personen einen Oberguru, der dann Kraft seines Amtes verkündet: "Der/Die/Das ist die Nr. 1"

Gruß Ludwig
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  LVF-Bilder-Rätsel jg 856 507.175 05.06.2014 06:01
Letzter Beitrag: Kasi
  Programmier-Rätsel Mr.T 9 10.498 07.05.2007 11:05
Letzter Beitrag: Lucki
  5. LVF Rätsel mit Gewinnspiel Mr.T 33 28.764 30.04.2007 08:28
Letzter Beitrag: jg
  4.LVF-Rätsel Mr.T 200 118.023 20.04.2007 10:39
Letzter Beitrag: Y-P
  2.LVF-Rätsel Mr.T 35 28.056 12.04.2007 13:06
Letzter Beitrag: Y-P
  3.LVF-Rätsel Mr.T 15 14.564 03.04.2007 21:07
Letzter Beitrag: jg

Gehe zu: