5 PERL、ルビーは、JavaScript(クロム)、PHP、Pythonの2、パイソン3、1206バイト、スコア6 6 /1206 = 38.6865671641791
q=1//2;s=+0;s|0;"/.__id__;#";_="""q=1//2;s=+0;s|0;"/.__id__;#";_={0}{1}{0};R=chr((39,34)[1/2>0])*12;Q=chr((39,34)[1/2==0])*3;q={0}{2}{0};print(_.format(Q,_,q[0:-12]+R,"%"))""";R=chr((39,34)[1/2>0])*12;Q=chr((39,34)[1/2==0])*3;q="""|;#<?ob_end_clean();
eval($_='"$t"?0?[$q=37 .chr+113 .chr+38 .chr,$p=(96 .chr+39 .chr)*4,$n=10 .chr,$s=39 .chr*12,$S=34 .chr*3]:eval("printf=console.log;c=String.fromCharCode;$q=c(96);$p=c(37,113,38,39).repeat(4);$n=c(10);$s=c(39).repeat(12);$S=c(34,34,34)"):[]?[$q=q(!g)^PA,$p=HARHARHARHAR^od2od2od2od2,$n=R^X,$s=bbbbbbbbbbbb^EEEEEEEEEEEE,$S=hhh^JJJ]:[$q=O^h,$p=str_repeat(RHa3^w9GS,4),$n=R^X,$s=str_repeat(b^E,12),$S=HHH^jjj];//#');printf($x='q=1//2;s=+0;s|0;"/.__id__;#";_=%7$sq=1//2;s=+0;s|0;"/.__id__;#";_={0}{1}{0};R=chr((39,34)[1/2>0])*12;Q=chr((39,34)[1/2==0])*3;q={0}{2}{0};print(_.format(Q,_,q[0:-12]+R,"%8$s"))%7$s;R=chr((39,34)[1/2>0])*12;Q=chr((39,34)[1/2==0])*3;q=%7$s|;#<?ob_end_clean();%5$seval($_=%3$s%1$s%3$s);printf($x=%3$s%2$s%3$s,$_,$x,$q,$p,$n,$s,$S,"%8$s",![]||([]+[])?$n:"");//#%4$s%6$s%7$s;print(_.format(Q,_,q[0:-12]+R,"%8$s"))%9$s',$_,$x,$q,$p,$n,$s,$S,"%",![]||([]+[])?$n:"");//#`q&%`q&%`q&%`q&%''''''''''''""";print(_.format(Q,_,q[0:-12]+R,"%"))
Perl、Ruby、PHP、Python 2およびPython 3をオンラインで検証してください!
注:上記のプログラムをChromeのインスペクターコンソール(への位置引数をサポートしているように見えるconsole.log)で実行すると、正しいプログラムが返されます。
説明
これは私が期待したよりもずっと長くなり、私も人生を少し難しくしたので、それをいじくり続けるつもりです。私ももっと言語を追加したいのですが、$印を気にしないものを見つける必要があります...
これはかなり標準的なクイン形式で、使用する見積もりの計算は言語ごとに少し異なります。Ruby %q&ではPHPが使用され'、JavaScript(Node.js)ではJavaScript が使用され、`Perl 5ではq(...が使用されます)。引用符のみが変更されるため、プログラムの残りの部分は引き続き実行可能であり、各言語で有効な構文です。Python 2および3は"""、Python 2および'''Python 3 を使用して 、前のプログラムを囲んでいます。
結果のPerlおよびRubyプログラムは標準的なクインではなく、追加のq/ %qが反復ごとに追加されますが、最初のプログラムは正しく戻ります。
結果は次のとおりです。
- Perl 5:
eval($_=q&... q&);printf($x=q&... q&,... );//#'%`'%`'%`'%`''''''''''''"""...
- Ruby:
eval($_=%q&... %q&);printf($x=%q&... %q&,... );//#`'`'`'`'''''''''''''"""...
- JavaScript(Chrome):
eval($_=`... `);printf($x=`... `,... );//#%q&'%q&'%q&'%q&'''''''''''''"""...
- PHP:
eval($_='... ');printf($x='... ',... );//#`q&%`q&%`q&%`q&%''''''''''''"""...
- Python 2:
... _="""... """;... q="""...''''''''''''""";print(_.format(Q,_,q[0:-12]+R,"%"))
- Python 3:
... _='''... ''';... q='''...""""""""""""''';print(_.format(Q,_,q[0:-12]+R,"%"))
私はこれをたくさん作り直しました、ここで何か重要なものを見逃していないことを願っています。私はまだジョーキングのスコアの近くに行くためのかなりの方法があります...