問題タブ [quine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
10000 参照

quine - クワインを書くための「コツ」とは?

私は、Ken Thompson の古典的な論文Reflections on Trusting Trustを読みました。この論文では、彼の主張の導入としてユーザーにQuineを書くよう促しています (強くお勧めします)。

quine は、入力を受け取らず、独自のソース コードのコピーを唯一の出力として生成するコンピューター プログラムです。

素朴なアプローチは、単に言いたいことです:

しかし、これは不可能であることがすぐにわかります。Python を使用して自分で作成することになりましたが、「トリック」を説明するのにまだ問題があります。クワインが可能である理由の優れた説明を探しています。

0 投票する
2 に答える
250 参照

quine - 自分自身を再現して役立つプログラム -- クインではありません

便利なタスクを実行するプログラムがあります。ここで、元のタスクの実行に加えて、コンパイルされた実行可能ファイルの実行時にプレーンテキストのソース コードを生成したいと考えています。これはクワインではありませんが、おそらく関連しています。

この機能は一般的には便利ですが、私の特定のプログラムは Fortran 90 で書かれており、Mako テンプレートを使用しています。コンパイルすると、元のソース コード ファイルにアクセスできますが、ユーザーが実行可能ファイルを実行するときにソースが存在することを確認できるようにしたいと考えています。

これを達成することは可能ですか?

以下は、単純なタスクを実行する単純な Fortran 90 の例です。

このプログラムを変更して、同じタスクを実行し (コンパイル時に文字列を出力する)、ソースを含む Fortran 90 テキスト ファイルを出力することはできますか?

前もって感謝します

0 投票する
1 に答える
655 参照

java - main() のない Quine プログラム

メインメソッドなしで書かれたこの小さなクワインプログラムに出くわしました:

誰かがこれがどのように機能するか説明できますか? ありがとう。

0 投票する
1 に答える
113 参照

python - このスニペットが厳密なクワインではない理由は何ですか?

なぜこれが厳密なクワインではないのか誰かが知っていますか?

0 投票する
7 に答える
31758 参照

c - 独自のソースコードを出力として出力するC/C++プログラム

ウィキペディアはそれがクワインと呼ばれ、誰かが以下のコードを与えたと言っています:

しかし、明らかにあなたは追加する必要があります

が機能するようにprintf()

文字通り、上記のプログラムは印刷されなかったので#include <stdio.h>、それは解決策ではありません(?)

「独自のソースコードを印刷する」という文字通りの要件と、特にインタビューでのこの種の問題の目的について、私は混乱しています。

0 投票する
3 に答える
541 参照

language-agnostic - クインは何を意味するのですか?

ウィキペディアでQuineという用語に出くわしたばかりですが、それが何を意味するのかわかりません。私はそれについてもっと混乱しています。実際の用途はありますか?

0 投票する
2 に答える
1167 参照

ruby - ルビークインを理解する

このコードブロックは、Rubyのクワイン(それ自体を印刷するプログラム)の例としてウィキペディアで見つけました。

しかし、私はそれがどのように機能するのかわかりません。特に、最後の行を削除すると、次のエラーが発生します。

構文エラー、予期しない$ end、tSTRING_CONTENTまたはtSTRING_DBEGまたはtSTRING_DVARまたはtSTRING_ENDが必要です

それらの行で何が起こりますか?

0 投票する
4 に答える
10086 参照

java - 独自のソース コードを出力する Java アプリケーション

自分では解けないちょっとしたクイズがあります。Java を使用して独自のソース コードを出力するプログラムを作成したいと考えています。誰でもこれを行う方法を知っていますか? この例のように:

これを実行すると、出力は次のようになります。

これを行う方法がわかりません。誰かが解決策または少なくともヒントを知っていますか? これは逆コンパイラではなく、クイズ作成者がヒントは「STATIC」だと教えてくれました。

0 投票する
1 に答える
364 参照

language-agnostic - 複雑なマルチクインはどのように書かれていますか?

マルチクインを次のように定義しています。

入力が与えられない場合、それぞれが正確なソースコードを出力し、入力としてnが与えられる場合、*n* 番目のプログラムのソースコードを出力する、n 個の異なるプログラミング言語によるn 個のプログラムのセット。

これは、最初のプログラムが出力されるまで、各プログラムが次のソース コードを出力する、プログラムの循環シーケンスと混同しないでください。この場合、各プログラムはクインではなく、ポイントを無効にします。これらの巡回セットは、 nの値が大きい場合に興味深い頭の体操ですが、実装するのは非常に簡単です。

この場合、複合とは「nの値2以上の場合」を意味します。この場合、 の解決策n = 2は十分に複雑であると思います。ただし、 nのすべての値に対する一般的な解決策 (読み方: 戦略) が目標です。

「単純な」クインがどのように書かれているかは理解していますが、私を魅了する複雑なマルチクインについて頭を悩ませているようには見えません。私の一部は、プログラマーの頭の中にあるせん断の創意工夫以外に解決策がないことを望んでいますが、これはありそうもないことだと思います。

0 投票する
1 に答える
183 参照

java - リフレクションを使用したクワイン

リフレクション API を使用して Java でクワイン (出力がそれ自体であるプログラム) を作成し、クワインのコードにアクセスしてから出力することは可能でしょうか? このようなプログラムは、出力に影響を与えないランダムな行が追加された場合でも、正確に出力されます。