Vereinfachung mehrerer Verzweigungen

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Majus
Beiträge: 129
Registriert: 30 Nov 2010, 15:35
Wohnort: Deutschland

Vereinfachung mehrerer Verzweigungen

Beitrag von Majus » 07 Okt 2011, 20:18

Hallo,

kann man einige Verzweigungen (mit Befehlseingang) auch ersetzen?
Kommt das Programm dann an eine Stelle, wo es in mehrere Teile geteilt werden könnte, muss ich dann immer die Verzweigung nehmen und das Programm alles ausprobieren lassen (A=1, A=2, A=3 ....)
Muss ich also bei 10 Möglichkeiten jedesmal 10 Verzweigungen mit Befehlseingang nutzen, oder gibt es da noch irgeneine andere Möglichkeit?
Das wäre dann z.B. bei einer Kasse notwendig, da man je nach Preis der gekauften Produkte etwas anderes über ein 7 Segment anzeigen müsste.

Gruß
majus

FischerPapa
Beiträge: 116
Registriert: 01 Nov 2010, 22:39
Wohnort: Wabern CH-BE

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von FischerPapa » 07 Okt 2011, 22:33

Hallo,
es gibt da noch das Element Vergleich (mit Festwert) mit dem du die Abfragen praktisch halbieren kannst.
Mit vielen Grüssen
FischerPapa
https://www.youtube.com/user/PascalHans81

Benutzeravatar
Dirk Fox
ft:pedia-Herausgeber
Beiträge: 1845
Registriert: 01 Nov 2010, 00:49
Wohnort: Karlsruhe
Kontaktdaten:

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von Dirk Fox » 07 Okt 2011, 22:46

Hallo Majus,
Majus hat geschrieben:kann man einige Verzweigungen (mit Befehlseingang) auch ersetzen?
oh ja, das geht durchaus! Eine Variante für Informatiker :-):
Anstatt den Wert aufsteigend mit einer in jedem Schritt größeren Konstante zu vergleichen, reduzierst Du die Zahl der Vergleiche, indem Du mit dem Element "Vergleich mit einer Konstanten" den Wert (Maximalwert bspw. 10) mit 10/2=5 vergleichst. Wenn kleiner, vergleichst Du mit 3, wenn größer, mit 7 usw. Damit sinkt die Zahl Deiner Vergleiche auf log2(10).

Herzlicher Gruss,
Dirk

Benutzeravatar
Dirk Fox
ft:pedia-Herausgeber
Beiträge: 1845
Registriert: 01 Nov 2010, 00:49
Wohnort: Karlsruhe
Kontaktdaten:

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von Dirk Fox » 08 Okt 2011, 09:28

... und noch eine Variante:
Du füllst ein Listenelement mit Ausgabewerten, und verwendest den "Input"-Wert als Selektor.

Beste Grüße,
Dirk

Majus
Beiträge: 129
Registriert: 30 Nov 2010, 15:35
Wohnort: Deutschland

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von Majus » 08 Okt 2011, 17:29

Hallo,

das mit den Verzweigungen mit Festwert ist eine gute Idee. Ich muss dann viel weniger programmieren. Vielen Dank.
Aber das Problem löst sich dadurch auch nicht komplett. Denn bei 100 Möglichkeiten ist das trotzdem noch viel Denkarbeit.

Das mit dem Listenelement hätte ich gerne mal probiert, aber das scheitert dann wohl daran, dass ich diese Liste noch nicht mal im Normalzustand verstehe.
(Geschweige denn das öffnen einer Liste) :(
Das liegt wohl daran, dass ich noch nie eine Liste verwendet habe, da ich keine benötigete. :oops:

Viele Grüße
Majus

FischerPapa
Beiträge: 116
Registriert: 01 Nov 2010, 22:39
Wohnort: Wabern CH-BE

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von FischerPapa » 08 Okt 2011, 19:02

Hallo,
schau mal in der Hilfe von RoboPro unter Liste nach. Dort wird die Liste genau erklärt.
Mit vielen Grüssen
FischerPapa
https://www.youtube.com/user/PascalHans81

Benutzeravatar
Dirk Fox
ft:pedia-Herausgeber
Beiträge: 1845
Registriert: 01 Nov 2010, 00:49
Wohnort: Karlsruhe
Kontaktdaten:

Re: Vereinfachung mehrerer Verzweigungen

Beitrag von Dirk Fox » 08 Okt 2011, 21:13

Hallo Majus,
Majus hat geschrieben:Das mit dem Listenelement hätte ich gerne mal probiert, aber das scheitert dann wohl daran, dass ich diese Liste noch nicht mal im Normalzustand verstehe. (Geschweige denn das öffnen einer Liste) :(
räusper... wie so oft im Leben gilt: Wer lesen kann, ist eindeutig im Vorteil ;-) - neben der Hilfe hilft ft:pedia 2/2011:
http://www.ftcommunity.de/ftpedia_ausga ... 2011_a.pdf

Beste Grüße,
Dirk

Antworten