質問

私はコンピューティングの無限の数字、特にPIに興味があります。

コンピューターが円をレンダリングするには、PIを理解する必要があります。しかし、それが無限である場合、どうすればそれができますか?

私はこれを見すぎていますか?丸みを帯びた値を使用するだけですか?

役に立ちましたか?

解決

数学的には、コンピューターは有限および非連続であるため、PIを完全に知ることも、円を正しくレンダリングすることもできません。

ただし、デジタルの領域では、これらのどちらもとにかく存在しないため、PIを近似してから、それを使用して円をほぼレンダリングするだけで十分であり、とにかくまったく同じピクセルが計算されていたとまったく同じピクセルになります。

いずれにせよ、結果のピクセルはそうではありません 本当 これらはデジタルポイントの有限コレクションであり、円は無限の数のポイントで構成された曲線であり、ほとんどが不合理な値を持つため、円のいずれかです。

(Piは通常、円のプロットに使用されていないことを私に指摘していますが、これは真実ですが、円のプロットに使用される方法は、Piの値を表現および/または計算するために使用される式に関連しています。まだ同じ問題があります)。

他のヒント

通常、近似で十分です。円を「レンダリング」するには、コンピューターは、必要な解像度(有限)で正確にレンダリングするのに十分なPIを十分に理解する必要があります。

編集:他の人が指摘したように、円をレンダリングするためにPIさえ必要ありません。それでも、質問の要点は「コンピューターはPIのような数字をどのように扱うのか」でした。彼らは近似を使用し、それらの近似を使用している人は誰でも、それらが与えられた目的に対して十分に正確であるかどうかを決定する必要があります。

円を描くためにPIはまったく必要ありません。円を描く方法はたくさんあります。素朴な方法は、サインとコサインにあります。

8ビットマシンで最も頻繁に見たアルゴリズムは ブレセンハムのサークル. 。そのために浮かぶポイント数学さえ必要ありません。

プログラミング言語は、PIおよび同様の「無限」数に対して丸い定数を使用します。

より高い精度を得るために、必要な限りループされる反復アルゴリズムを使用します。

コンピューターは、Piの適切な近似を使用するだけです。

MSDNの記事から System.math.pi

このフィールドの値は3.14159265358979323846です。

ところで:PIは無限ではありません。それは不合理であり、無限の数の非反復桁を持っていることを意味します。非常に短いPIにはいくつかの式があります。 (を参照してください ウィキペディアページ 詳細については)

これがPiの素晴らしく短い表現です:

PI as Integral

どこかで、宇宙の周りの円をミリメートルの精度に描くには、100桁未満のPI、つまり、手に長すぎる人が計算するよりもはるかに少ない桁が必要であるという証拠を見ました(または、コンピューティングパワーが多すぎます...)。さて、私がその証拠を見つけることができれば...(編集) それを見つけた

私はそれが非常に少数にそれを丸めると信じており、おそらく定数である可能性が高いと思います。 PHPを使用する場合、これがPIレンダリング方法です。

echo pi(); // 3.1415926535898
echo M_PI; // 3.1415926535898

高校で3.14159しか必要ないのと同じように、コンピューターはそれをかなり正確にするのにそれほど多く必要なだけです。

近似は、からのメソッドを使用して取得するかどうかにかかわらず、多くの場合「十分に良い」ことがよくあります このサイト また もう1つ.

「レンダリング」は別の問題です。有限の画面解像度がある場合、πの完全な値はそれほど重要ではありません。

更新:計算は別の問題であり、レンダリングとは異なります。一部のアプリケーションでは、標準のダブルが与えるよりも高い精度を必要とする場合があります。それは問題に依存します。

もちろん、科学的コンピューティングなどの特別なケースがない限り、コンピューターはPIの丸い値を使用するだけです。たとえば、PythonではPiは次のように表されています。

>>> import math
>>> math.pi
3.1415926535897931

これをアイドル、Pythonsインタラクティブなインタープリターで自分でテストすることができます。

piは無限ではありません。それは非合理的であり、あなたがそれを商として表現できないということです。無限の数字数があります。http://en.wikipedia.org/wiki/proof_that_π_is_irriational

コンピューティングについてここでいくつかの情報を見つけてください。http://en.wikipedia.org/wiki/computing_π

素敵なページもこれですhttp://3.1415926535897932384626433832795028841971693937510582097494592.com/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top