Domanda

Sono curioso di sapere i numeri infiniti in informatica, in particolare pi greco.

Per un computer per rendere un cerchio avrebbe dovuto capire pi greco. Ma come può, se è infinito?

Sto guardando troppo in questo? Sarebbe basta usare un valore arrotondato?

È stato utile?

Soluzione

Matematicamente, i computer sono sia finita e non continuo e pertanto non può né sapere PI completamente, né rendere correttamente un cerchio.

Tuttavia, nel regno digitale nessuno di questi esistono comunque, quindi è sufficiente approssimare PI e quindi utilizzare tale da rendere circa il cerchio, con conseguente esattamente gli stessi pixel che sarebbero stati calcolati da un PI esatta comunque.

In entrambi i casi, i pixel risultanti non sono davvero un cerchio o, perché sono un insieme finito di punti digitali e un cerchio è una curva costituita da un numero infinito di punti, la maggior parte con valori irrazionali.

(è stato mi ha fatto notare che PI non viene normalmente utilizzato per tracciare un cerchio, che è vero, tuttavia, i metodi utilizzati per tracciare un cerchio sono legati alle formule utilizzate per esprimere e / o di calcolare il valore di PI, che hanno ancora gli stessi problemi).

Altri suggerimenti

Un'approssimazione è generalmente sufficiente. Per "rendere" un cerchio, il computer ha solo bisogno di capire pi greco abbastanza bene da rendere con precisione in qualsiasi risoluzione (finito) è richiesto.

Edit: come altri hanno fatto notare, non c'è nemmeno bisogno pi greco per rendere un cerchio. Ancora, il succo della questione è stata "come fanno i computer che fare con i numeri come pi?" Usano approssimazioni, e chi sta usando quelle approssimazioni devono decidere se sono sufficientemente precisi per lo scopo indicato.

Non è necessario PI affatto per disegnare un cerchio. Ci sono molti modi per disegnare un cerchio. Il modo ingenuo è con seno e coseno.

L'algoritmo che ho visto più spesso sulle macchine a 8 bit era di Bresenham . Non hai nemmeno bisogno di calcoli in virgola mobile per questo.

Linguaggi di programmazione utilizzare una costante arrotondata per pi e simili numeri "infinito".

Al fine di ottenere una maggiore precisione si utilizza algoritmi iterativi che sono in loop per tutto il tempo necessario.

Computer basta usare una buona approssimazione di pi greco.

Da articolo di MSDN su System.Math.PI

  

Il valore di questo campo è   3.14159265358979323846.

A proposito: PI non è infinita. È irrazionale, che significa che ha un numero infinito di cifre decimali non ripetibile. Ci sono diverse espressioni per PI che sono molto brevi. (Vedi la rel="nofollow pagina di Wikipedia per maggiori dettagli)

Ecco un breve meravigliosamente espressione per PI:

PI come Integrale

Da qualche parte ho visto una prova che per disegnare un cerchio intorno l'universo con precisione millimetrica, avreste bisogno di meno di 100 cifre di pi, in altre parole, di gran lunga meno cifre sono state calcolate da persone con troppo tempo sulle loro le mani (o troppa potenza di calcolo ...). Ora, se solo potessi scoprire che la prova ... (edit) giudicano

Credo che arrotonda ad un numero molto piccolo, ed è più probabile una costante. Se si utilizza PHP, questo è il modo PI rende:

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

Proprio come avete solo bisogno 3.14159 in High School, i computer solo bisogno così tanto per farlo abbastanza precisa.

Un'approssimazione è spesso "abbastanza buono", se si ottiene impiegando un metodo da questo sito o un altro .

"Rendering" è un'altra questione. Quando si dispone di una risoluzione dello schermo finita, un valore ideale di π non importa tanto.

UPDATE: Il calcolo potrebbe essere un'altra cosa, diversa dal rendering. Alcune applicazioni potrebbero richiedere una maggiore precisione rispetto al doppio standard dà. Dipende dal problema.

Computer basta usare valori arrotondati di pi greco, a meno che, naturalmente, c'è un caso particolare, come calcolo scientifico. Per esempio, in pitone pi greco è rappresentata come:

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

È possibile verificare questo da soli in IDLE, pitoni interprete interattivo.

Pi non è infinita è irrazionale, ciò significa che non si può esprimere come quoziente. Ha numero infinito di cifre. http://en.wikipedia.org/wiki/Proof_that_π_is_irrational

A proposito di calcolo trovare alcune informazioni qui. http://en.wikipedia.org/wiki/Computing_π

Pagina Nizza è anche questo http://3.141592653589793238462643383279502884197169399375105820974944592.com/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top