問題タブ [cryptarithmetic-puzzle]
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.
prolog - 次の算術パズルを解く Prolog プログラムを作成してください。
ここで、各文字は 0 ~ 9 の一意の数字を表し、線の下の値はその合計を表します。
prolog - プロローグで出力なし
私は Prolog を初めて使用し、暗号演算の問題 CROSS+ROADS = DANGER を解決するためにそれを使用していました。ただし、コードを実行すると、出力がありません。プログラムの何が問題なのか教えてもらえますか? とても感謝しています。
コード:
SWI-Prologを使用しています
prolog - Prolog で暗号演算を行うにはどうすればよいですか?
7 つの異なる文字のそれぞれは、異なる数字を表します。目的は、結果の合計が算術的に正しくなるように、文字の代わりに数字を使用する方法を見つけることです。解は、上記の足し算の問題を満たすすべての数字の組み合わせを生成する必要があります。のようなクエリを入力するとcrypto(P,I,N,G,O,F,U)
、ソリューションが返されます。
暗号算術パズルは次のようになります。
char - これが何を意味するか知っている人はいますか?
私の同僚は、何かが何を意味するのかを調べるように私に頼んだ. そして、私は知りません。
「Y29taW5nIHRvIHRoZSBvZmZpY2UgdG9kYXkg」の意味を知っている人はいますか?
ヒント : 文字列の文字セットをよく見てください
prolog - この Prolog コードが複数の重複した回答を返すのを防ぐにはどうすればよいですか?
プロローグを学んでいます。私は課題に取り組んでいます。私はすでにいくつかのコードを作成しましたが、これは部分的に機能しています。しかし、どういうわけか、複数の重複した回答が返されています。
質問は:
私が思いついた解決策は次のとおりです。
しかし、このコードを実行すると、次のような回答が得られます。
なぜこれが起こっているのか知っています(最初の2つの位置を無視していて、それらの順列のために結果が2回表示されているためです)。! を使用せずに削除する方法を理解するのを手伝ってもらえますか? (複数の回答がある場合、 ! は最初の回答のみを表示するため、予期されていません。)
前もって感謝します!
prolog - インスタンス化障害 ECLiPSe CSP
ECLiPSe の下で CSP に問題があります。TWO で表される数が 2 で割り切れることを要求する制約を暗号文に追加したいと考えています。
ご協力いただきありがとうございます。
私のコード:
python - Python 3 での暗号算術パズルの汎用ソリューション
私はこの問題の声明で立ち往生しています。私のコードは機能しますが、使用itertools.permutations
したため、非常に遅くなります。さらに、すべてまたは任意の入力に対して汎用にする方法がわかりません。バックトラッキングを使用する必要があると思いますが、ここでの使用方法は使用していません。
貴重な提案、アドバイス、またはコードは大歓迎です。はい、これは割り当てであり、コード全体を求めているわけではありません。ありがとう!
問題文は次のとおりです。
以下の異なる文字を異なる数字 (0、1、2、..、9) に置き換えて、対応する加算が正しく、MONEY の結果の値ができるだけ大きくなるようにします。値は何ですか?
SHOW + ME + THE = お金
方程式を満たす 3 つの解があります: 10376、10267、10265。したがって、正しい解は (最大の) 10376 です。同じ最大値に評価される複数のマッピングがある場合は、それらすべてを出力します。
課題:
この種の問題の正しい解決策を常に見つけることができるプログラムを Python で作成します。
c++ - 暗算パズル
私はこの暗号化パズル TWO + TWO = FOUR を解こうとしていますが、生のブルート フォースを使用しましたが、どこで間違いを犯しているのかわかりません。ここでの考え方は、0 から 10 までの数字のすべての可能な組み合わせを試し、文字に割り当てられるすべての数字が異なる必要があるということです。定義により
暗号算術パズルは、いくつかの数字の数字が文字 (または記号) で表される数学ゲームです。各文字は一意の数字を表します。目標は、与えられた数式が検証されるような数字を見つけることです: この場合:
このコードは、問題を満たす解が見つかるまで、考えられるすべての組み合わせを調べます。else if
それに対する制約はステートメントで与えられます。最初if
のステートメントは、数値が同じかどうかを単純にチェックし、同じ場合はその繰り返しをスキップします。
私の望む出力は、すべての正しい解が表示されることです。
たくさんの結果が得られますが、興味深いことに、最後の結果だけが問題なく、次のようになります。