3

Excelには、3つの連続するセルに1、2、3を入力し、セルを選択して下にドラッグすると、残りのセルが4、5、6、7などとして自動的に入力されるという優れた機能があります。また、より多くのパターンに一致させることができます。たとえば、2、4、6、8を実行した場合、2を追加していることを認識し、10、12、14などを提案します。

Excelはどの番号をどのように知るのですか?彼らはさまざまなケースをハードコーディングしていますか(つまり、定数の加算、定数の減算、定数の乗算)、またはこれを自動的に予測できるアルゴリズムはありますか?(この質問は言語に依存しないはずですが、それが役立つ場合は、jQueryでこれを実行したいと思います)

ありがとう!

4

3 に答える 3

3

私はそれが簡単なことだと確信しています。Excel はおそらく、ユーザーが 3 つの数値を入力すると、連続する各数値間のデルタをチェックします。それらが両方とも同じである場合、そのデルタを使用して次の数を予測します。

于 2011-07-24T17:16:04.193 に答える
1

これを Excel よりも一般的に (定数値の加算または減算のみ) 実行する場合は、数値メソッドの観点からいくつかの補間アルゴリズムを調べてください。このウィキブックの記事は大丈夫なチュートリアルです。

于 2011-07-28T07:32:09.580 に答える
0

Excel では、加算と減算でのみ機能します (私が知っていることですが、乗算を試してみたところ、結果は元のパターンと同じではありません)。

それを知っていれば、最初の 2 つのセルの差を計算してから、セル 2 とセル 3 の差を調べて同じかどうかを確認するのは簡単だと思います。次に、その変換を予測するセルに適用できます。

*Example*

Cell1: 2
Cell2: 5
Cell3: 8

if(cell2 - cell1 == cell3 - cell2)
    cell4 = cell3 + (cell2-cell1); //Cell4 will now be 11 since it increments by steps of 3

次に、選択したすべてのセルに必要な値をコピーする for ループを使用できます (次の 10 個のセルをパターンに従わせたい場合は、それらの 10 個のセルの値を更新する for または while ループを使用します)。

于 2011-07-24T17:20:29.540 に答える