Crane-Flak , Score 3 (252 Byte)
%&'()%&%X'Z&xx\()'()z%xz|%&'()%&'()%&'()9;=&'()9;=%XZ\&'z|%&'(9;=(9;=%&'XZ\(|xz|9;=%&'%&(%X'Z&\('()xxz%xz|9;=&'()9;=%XZ\&'z|9;=(9;=%&'XZ\(|9;=)))))))%&Y[]'()yy{}%&y{}%&'()%&'():<>'():<>%&Y[]'(){}y{}:<>%&Y[]'()yy{}::<><>:<>%&y{}:<>'():<>%&Y[]'(){}::<><>
Probieren Sie es online!
(Funktioniert nicht ganz in Brain-Hack, da nur Crane-Flak Mods von 256)
Um 1 verschoben
&'()*&'&Y(['yy])*()*{&y{}&'()*&'()*&'()*:<>'()*:<>&Y[]'({}&'():<>):<>&'(Y[])}y{}:<>&'(&')&Y(['])()*yy{&y{}:<>'()*:<>&Y[]'({}:<>):<>&'(Y[])}:<>*******&'Z\^()*zz|~&'z|~&'()*&'()*;=?()*;=?&'Z\^()*|~z|~;=?&'Z\^()*zz|~;;=?=?;=?&'z|~;=?()*;=?&'Z\^()*|~;;=?=?
Probieren Sie es online!
Um 2 verschoben
'()*+'('Z)\(zz^*+)*+|'z|~'()*+'()*+'()*+;=?()*+;=?'Z\^()|~'()*;=?*;=?'()Z\^*~z|~;=?'()'(*'Z)\(^*)*+zz|'z|~;=?()*+;=?'Z\^()|~;=?*;=?'()Z\^*~;=?+++++++'([]_)*+{{}'({}'()*+'()*+<>@)*+<>@'([]_)*+}{}<>@'([]_)*+{{}<<>@>@<>@'({}<>@)*+<>@'([]_)*+}<<>@>@
Probieren Sie es online!
Verschoben um 3
()*+,()([*]){{_+,*+,}({}()*+,()*+,()*+,<>@)*+,<>@([]_)*}()*+<>@+<>@()*[]_+{}<>@()*()+([*])_+*+,{{}({}<>@)*+,<>@([]_)*}<>@+<>@()*[]_+<>@,,,,,,,()\^`*+,||~€()|~€()*+,()*+,=?A*+,=?A()\^`*+,~€|~€=?A()\^`*+,||~€==?A?A=?A()|~€=?A*+,=?A()\^`*+,~€==?A?A
Probieren Sie es online!
Erläuterung
Der Hauptcode bei der Arbeit ist hier
([]){{}({}n<>)<>([])}{}<>([]){{}({}<>)<>([])}<>
wo nist eine willkürliche Zahl. Dies verschiebt alles in den Offstack und fügt es nzu jedem Element hinzu (Modulo 256 ist bei der Ausgabe impliziert) und verschiebt sie dann alle zurück.
Für das erste Programm (dh um 0 verschoben) brauchen wir dies jedoch nicht zu tun, da das Verschieben um Null das cat-Programm ist. Also fangen wir mit diesem Code an:
([]){{}({}()<>)<>([])}{}<>([]){{}({}<>)<>([])}<>
und verschiebe es um 1 nach unten
'Z\(zz|'z|m;=(;='Z\(|z|;='Z\(zz|'z|;=(;='Z\(|;=
Dies ist unausgeglichen, daher müssen wir es beheben. Es gibt eine Reihe von Möglichkeiten, wie wir dies mit meiner Auswahlmethode tun können (aus Gründen, die sich später herausstellen werden):
'Z\(zz|'z|m;=(;='Z\(|z|;='Z\(zz|'z|;=(;='Z\(|;=)))))){}{}{}{}{}
Wenn wir dies um 2 erhöhen, erhalten wir
)\^*||~)|~o=?*=?)\^*~|~=?)\^*||~)|~=?*=?)\^*~=?++++++}}}}}
Da ()es einfacher ist, damit umzugehen, als {}wir es verwenden werden }, um das von uns gewünschte Programm zu vervollständigen. Das bedeutet, dass das )mit ziemlich offensichtlichen Mitteln ausgeglichen werden kann. Mit einigem Geigen können wir daraus machen:
()\^*||~()|~()*=?*=?()\^*~|~=?()\^*||~()|~=?*=?()\^*~=?+++++++([]_)*+{{}({}()*+()*+<>@)*+<>@([]_)*+}{}<>@([]_)*+{{}<<>@>@<>@({}<>@)*+<>@([]_)*+}<<>@>@
Wenn wir das wieder nach unten verschieben, erhalten wir
&'Z\(zz|&'z|&'(;=(;=&'Z\(|z|;=&'Z\(zz|&'z|;=(;=&'Z\(|;=)))))))&Y[]'()yy{}&y{}&'()&'():<>'():<>&Y[]'(){}y{}:<>&Y[]'()yy{}::<><>:<>&y{}:<>'():<>&Y[]'(){}::<><>
Der Schritt bis 3 ist so komplex, dass ich ihn nicht mehr richtig verstehe. Ich habe die gleiche Technik angewendet und nur herumgespielt, bis ich endlich alle 4 auf einmal zum Arbeiten gebracht habe. Die Technik ist so ziemlich die gleiche, es wird nur viel mehr herumgespielt.