問題タブ [greatest-common-divisor]
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.
list - 2 つ以上の要素に対する Sage のユークリッド アルゴリズム
数値のリストを取得する演習を作成しようとしています。次のような要素のリストを表示します: A=[a0,a1,a2] の場合、a0 を知っている場合、U=[u0,u1,u2] があります。 *u0 + a1*u1 + a2*u2 = d であり、d は A の gcd です。
Sage には a0 と a1 から u0 と u1 を取得する関数があるため、2 つの要素の場合は非常に単純です。
n要素のリストでこれを行う方法がわかりません。
java - GUIインターフェイスを使用したJava最大公約数-Int/String/Calculationsの問題
私は最大公約数計算機を作成しようとしています。このプロジェクトのGUIインターフェイスを作成する必要があり、正しく作成したと思いますが、計算に問題があるため、テストできません。
具体的には、次の2行でコンパイラでエラーが発生しています。
エラーは「タイプmistmatch、Stringからintに変換できません」です。intx=0を挿入しようとしました。およびintx= 0; その前に運がなかった。また、これらをintからStringsに変更しようとしましたが、すべてがさらに混乱します。何を使うべきかテキストを取得する方法がわかりません。
これが私のコードの計算部分です:
これが私のコード全体です:
java - 1 つのメソッド内で 3 つの数値の GCD を見つける方法
3 つの数値間の GCD が 1 を超えないようにする必要があります。
メソッドのこれまでのコードは次のとおりです。
return 1
私が研究室で働き始めたとき、それはすでにそこにありました。GCD が 1 以下であることを確認するにはどうすればよいですか? そして、3 つの整数すべてを返しますか?
何をする必要があるかを理解するのに役立つ場合、コードの残りの部分は次のとおりです。
アップデート
同じラボの新しいコーディングは次のとおりです。
java - 2 つの数値の最大公約数を見つける単純な Java プログラムを作成するにはどうすればよいですか?
質問は次のとおりです。
「2 つの整数をパラメーターとして受け取り、2 つの数値の最大公約数を返す gcd という名前のメソッドを作成します。2 つの整数 a と b の最大公約数 (GCD) は、a と b の両方の因数である最大の整数です。任意の数と 1 の GCD は 1 であり、任意の数と 0 の GCD はその数です。
2 つの数値の GCD を計算する効率的な方法の 1 つは、ユークリッドのアルゴリズムを使用することです。
この問題を解決する方法について、私は本当に混乱しています。これまでのプログラムで何が間違っていたかについて、いくつかのヒントとヒントが欲しいだけです。(私はスキャナーを入れなければなりません。それが私の先生の要件です。) 私はこれを自分で解決したいので、完全なコードを教えないでください。上記の式をどのように組み込むかについてのヒントを教えてください。(そして、なぜ == 0 を入れたのか疑問に思っているなら、それは、0 と 90 という 2 つの数字がある場合、それらの GCD は 0 になると思ったからですよね??)
また、私のコードには while ループを含める必要があります... if ループの方がいいと思います...
前もって感謝します!:)
私の現在のプログラム:
java - 最大公約数のコードをコンパイルできませんか?
特に「gcd();」を呼び出すメインプログラムで、コードのコンパイルに問題があります。括弧内には何を入れればよいですか?ありがとうございました。
c++ - バイナリ GCD - 遅すぎるアルゴリズム
ウィキペディア ( http://en.wikipedia.org/wiki/Binary_GCD_algorithm ) によると、bignum (最大 5000 桁) のバイナリ GCD を作成しようとしていました。
私のGCD自体は次のようになります。
私は独自のビットセット減算関数も使用しています:
このアルゴリズムの速度を改善する場所は見当たりません (バイナリ GCD 自体は高速です) が、プログラムが遅すぎるというフィードバックが寄せられています。
php - 2つ以上の整数のGCD(最大公約数)を探しますか?
私はすでに2つの数のGCDを見つける機能を持っています。
しかし、ここで、この関数を拡張して、NポイントのGCDを見つけたいと思います。なにか提案を ?
c - C の構造体を使用して GCD を正しく実装する
私は非常に単純なコンピューター代数システムを c で実装しています。しばらくするとプログラムがクラッシュするという問題があります。
アイデアは、3^(21+8^(3^100)) + 4 のような式を持ち、それが 2 mod 7 に等しいことを確認することです。私はすでに Java でプログラムを作成しており、それを c に移植しようとしています。
これが私が行った方法です: expr という名前の構造体があります。バイナリ式またはアトミック int のいずれかです。
問題 (の 1 つ) は、gcd 関数でメモリを解放していないことだと思います。これが gcd 関数の書き方です。
これはJavaではうまく機能しますが、自動ガベージコレクションがないため、Cで機能するかどうかはわかりません。関数が再帰的である場合、それを構造化する方法がわかりません。私の質問は、free_expr 関数をどこに配置すればよいかということだと思います。mod(a, b) は新しい expr 構造体を割り当てるため、最終的に解放されることのない多くの expr が作成されます。これがクラッシュの原因ではないかと思います。これを構造化する正しい方法は何でしょうか? それとも、私はこれをすべて間違っていますか?
コードの保守性のために、int よりも struct expr で計算を行う方がはるかに望ましいです。
助けてくれてありがとう。
[編集] これは私の mod 関数です
}
phi(n) は、オイラーの totient 関数を計算します。
[編集 2] これが私の平等です
c - 最大公約数の計算
浮動小数点数のGCDを計算するために次の関数を作成しましたが、これを入力(111.6、46.5)に対して実行すると、関数内のfmod(a、b)の計算により、2回の再帰呼び出し後に間違った結果が得られ始めます。ここでエラーを見つけることができません。誰かがここで何が悪いのかを見つけることができますか?
}