圆周率近似值
几个文明古国均在歷史早期就计算出了较精确的的近似值以便于處理生产的需要。公元5世纪时，中國劉宋数学家祖冲之用几何方法将圆周率计算到小数点后7位数字。大约同一时间，印度的数学家也将圆周率计算到小数点后5位。历史上首个的精确无穷级数公式（即π的莱布尼茨公式）直到约1000年后才由印度数学家发现。微積分的出現，很快地將的計算位數推至數百位，足以滿足任何科學工程的計算需求。在20和21世纪，由于计算机技术的快速发展，借助计算机的计算使得的精度急速提高。截至2021年8月，的十进制精度已高达6.28×10位。当前人类计算的值的主要目的是为打破记录、测试超级计算机的计算能力和高精度乘法算法，因为几乎所有的科学研究对的精度要求都不会超过几百位。
經典近似值
其他进位制的近似值
和所有无理数一样，也无法表達成分数。但每个无理数包括，都能表達成一系列叫连分数的连续分数形式：
在这个连分数的任意一点截断化简，都能得到一个的近似值；前四个近似值是：3，formula_2，formula_3，formula_4。这些数在历史上是最广为人知且广為使用的几个近似值。用以上方式得出的的近似值要比任何有相同或更小的整数分母的其他整数分数近似值更接近。由于是一个超越数，据超越数定义来说它不是代數數，又因此不可能是一个二次無理數；是故不能表示为循环连分数。尽管的简单连分数没有表现出任何其他明显规律，数学家们發現了数个广义连分数能表示，例如：
最早有記載的对圓周率估值在古埃及和古巴比倫出现，而它們兩個文明古国估值都与圆周率的「精確值」相差不到百分之一，可說已是非常精準。
有不少埃及學家認為古埃及遠至古王國時期時期，古埃及人已經會用formula_2作為計算圓周率的近似值，但這個說法受到了質疑。
古巴比倫曾出土一塊前19世纪至前16世纪的泥板，泥板上顯示了人们当时把圓周率視同formula_7，即等於3.125。
古埃及的莱因德数学纸草书，是古埃及第二中间期时代（约前1650年）由僧侣阿姆士在纸草上抄写的一部数学著作，鉴定撰寫年份為公元前1650年，但抄自一份公元前1850年的文本。它載有用作計算圓面積的公式，该公式中圓周率近似值等于formula_8，約等於3.1605。
其中，古埃及的莫斯科数学纸草书，也有載有用作計算圓面積的公式，圓周率近似值等于formula_8，約等於3.1605。。
公元前9世紀的《》中的天文學運算把formula_10，約等於3.139，精确到99.91%，用作圓周率估值。
而公元前6世紀的儀軌經當時採用的值是formula_11，約等於3.0883265。
而某些公元前150年前的其他印度文獻把圓周率視為formula_12（約等於3.1622）。
第一個有紀錄、嚴謹計算數值的演算法是透過正多邊形的幾何算法，是由希臘數學家在西元前250年阿基米德做的。
這個算法使用了有一千年之久，因而有時亦稱阿基米德常數。
阿基米德的算法是在計算圓的外切正六邊形及內接正六邊形的邊長，以此計算的上限及下限，之後再將六邊形變成十二邊形，繼續計算邊長，一直計算到正96邊形為止。他根據多邊形的邊長證明formula_13，也就是formula_14。
阿基米德得到的上限formula_2也造成一個常見誤解，認為就等於formula_2。
希臘羅馬的科學家克劳狄乌斯·托勒密在《天文学大成》一書中提到的數值是3.1416，可能來自阿基米德，也可能來自阿波罗尼奥斯。
數學家在1630年利用多邊形的方式計算到第39位小數，一直到1699年，其他數學家才利用無窮級數的方式打破其紀錄，計算到第71位小數。
在中国历史上，的數值有3、3.1547（公元前一世紀）、formula_12（公元前100年，數值約3.1623）及formula_18（第三世紀，數值約3.1556）。
公元5年，漢朝的劉歆可能計算了圓周率3.1457。
而一百年後，約公元130年，张衡計算了圓周率近似值formula_12，即約等於3.1622777。
克劳狄乌斯·托勒密，也計算了圆周率近似值為formula_20，也即是formula_21。
第一個已知的精確到小數點後三位的近似值正是托勒密做的。
這個formula_22正可用兩個六十進制數字表示。
王蕃通曉天文數學。撰有《渾天圖記》、《渾天象注》。曾根據渾天說和長期的天象觀察，精心製作渾天儀。
他計算了圆周率近似值為formula_18，也即是formula_24。
大約在公元265年，魏國的數學家刘徽創立了割圆术，用3,072邊的正多邊形計算出的數值為3.1416。
刘徽後來又發明了一個較快的算法，利用邊數差兩倍的正多邊形，其面積的差值會形成等比數列，其公比為formula_25的原理，配合96邊形formula_26算出的數值為3.14。
何承天亦对圆周率进行研究，他创立了调日法，计算出圆周率近似值为，也即約等於3.1429，准确至小数点后2位。
据《隋书·律曆志》记载，祖沖之以「以直徑一億為一丈，圓周盈數三丈一尺四寸一分五厘九毫二秒七忽，朒數三丈一尺四寸一分五厘九毫二秒六忽，正數在盈朒二限之間。密率，圓徑一百一十三，圓周三百五十五。約率，圓徑七，週二十二。」，以此为直径求圆周率，求得盈数（即过剩的近似值）为formula_27；肭数（即不足的近似值）为formula_28，圆周率的真值介于盈肭两数之间。
《隋书》没有具体说明祖冲之是用什么方法计算出盈肭两数的。一般认为，祖冲之采用的是刘徽割圆术分割到24576边形，又用刘徽圆周率不等式得祖冲之著名的圆周率不等式： formula_29。
祖冲之的这一结果精确到小数点后第7位，直到一千多年后才由15世纪的阿拉伯数学家阿尔·卡西以17位有效数字打破此记录。
按照当时计算使用分数的习惯，祖冲之还采用了两个分数值的圆周率：“约率”formula_30（或称之为“疏率”）以及“密率”formula_31。在分母<16600的所有整分数中，密率的比值最接近圆周率。祖冲之可能利用何承天的调日法求得圆周率的约率和密率。数学家华罗庚曾认为密率的求得，说明祖冲之可能已经掌握了连分数的概念。
日本数学家三上义夫说，“约率formula_32，无非是几百年前希腊数学家阿基米德已经得到的数值，但是formula_33 这个分数，却是翻遍古希腊，古印度和阿拉伯的数学文献都找不到的分数，希腊人肯定不知道它；在欧洲直到1586年才由荷兰人安托尼斯宗（Adriaan Anthoniszoon）求出了formula_34这个比值。因此，中国人掌握这个非凡的圆周率分数比欧洲早出整整一千年之久”。为纪念这位伟大的中国古代数学家，三上义夫要求把formula_35称为“祖率”。
祖冲之在公元480年利用割圆术計算12,288形的邊長，得到的值在3.1415926和3.1415927之间。在之後的八百年內，這都是準確度最高的估計值。為紀念祖沖之對圓周率發展的貢獻，日本數學家三上義夫將這一推算值命名為“祖沖之圓周率”，簡稱“祖率”。
印度天文學家阿耶波多在公元499年的著作《阿里亚哈塔历书》中使用了3.1416的數值。
計算出出formula_12，也即約等於3.1622777。
斐波那契在大約1220年利用獨立於阿基米德多邊形法，計算出3.1418。
義大利作家但丁·阿利吉耶里則計得formula_37。
波斯天文學家卡西在1424年利用3×2邊的多邊形，計算到六十進制的第9位小數，相當十進制的第16位小數。這一突破成為當時的紀錄，延續了約180年。
法國的數學家弗朗索瓦·韦达在1579年用3×2邊形計算到第9位小數。
阿德里安·范·羅門在1593年計算到第15位小數。
荷蘭數學家鲁道夫·范·科伊伦在1596年計算到第20位小數，他之後又計算到第35位小數，因此在二十世紀初之前，圓周率在德國會稱為鲁道夫數。
荷蘭科學家威理博·司乃耳在1621年計算到第34位小數。
奧地利天文學家在1630年用10邊形計算到第38位小數，至今這仍是利用多邊形算法可以達到最準確的結果。
16世紀及17世紀時，的計算開始改用無窮级数的計算方式。無窮级数是一組無窮數列的和。
無窮级数讓數學家可以計算出比阿基米德以及其他用幾何方式計算的數學家更準確的結果。
雖然詹姆斯·格雷果里及戈特弗里德·莱布尼茨等歐洲數學家利用無窮數列計算而使得该方法为大家所知，但这种方法最早是由印度科學家在大約1400到1500年之間發現的。第一個记载的用無窮级数計算的人是约公元1500年左右时，印度天文學家在他的著作《》中用梵語詩所記錄。當時沒有這個數列對應的證明，而證明出現在另一本較晚的印度作品《》，年代約在公元1530年。尼拉卡莎將該數列歸功於更早期的印度數學家（ 1350 –  1425）。有許多相關的無窮级数，包括有關formula_38、formula_39及formula_40的，現在稱為或π的莱布尼茨公式。瑪達瓦在1400年用無窮级数計算到第11位小數，但在1430年一位波斯數學家卡西利用多邊形算法否定了他算的的結果。 歐洲第一個發現的無窮項圓周率公式是無窮乘積（和一般用來計算的無窮級數不同），由法國科學家弗朗索瓦·韦达在1593年發現：
約翰·沃利斯在1655年發現了沃利斯乘积，是歐洲第二個發現的無窮項圓周率公式： 微积分学是由英國科學家艾萨克·牛顿及德國數學家戈特弗里德·莱布尼茨在1660年代發明，因此也出現許多計算的無窮級數。牛頓自己就利用反正弦（formula_43）數列在1655年或1666年將近似到第15位小數，後來寫到「我很羞愧的告訴你我為了這個計算用了多少個數字，我當時沒有做其他的事。」
蘇格蘭數學家詹姆斯·格雷果里在1671年發現了馬德哈瓦公式，莱布尼茨也在1674年發現：
這個公式即為格雷果里-莱布尼茨公式，在formula_45時數值為formula_46。1699年時英國數學家亚伯拉罕·夏普用格雷果里-莱布尼茨公式，在formula_47時計算，計算到了的第71位小數，打破由多邊形算法得到的第39位小數的记录。格雷果里-莱布尼茨公式在formula_45時非常簡單，但收斂到最終值的速度非常慢，因此現在不再会用此公式來計算。
約翰·梅欽在1706年利用格雷果里-莱布尼茨級數產生了一個可以快速收斂的公式：
梅欽用這個公式計算到的第100位小數後來其他數學家也發展了一些類似公式，現在稱為梅欽類公式，創下了許多計算位數的記錄。在進入電腦時代時，梅欽類公式仍然是个耳熟能详的可以計算的公式，而且在约250年的时间里，很多有關位數的記錄都是梅欽類公式所得，比如在1946年時由達尼爾·弗格森（）用這類公式計算到第620位小數，是在沒有計算設備輔助下的最佳紀錄。
1844年，計算天才在德國數學家卡爾·弗里德里希·高斯的要求下以梅欽類公式心算了的200個小數位，並創下紀錄。英國數學家花了15年的時間計算到小數707位，不過中間在第528位小數時出錯，因此後面的小數也都不正確。
有些的無窮級數收斂的比其他級數要快，數學家一般會選用收斂速度較快的級數，可以在較少的計算量下計算，且達到需要的準確度。以下是的莱布尼茨公式：
隨著一項一項的值加入總和中，只要項次夠多，總和最後會慢慢接近。不過此數列的收斂速度很慢，要到500,000項之後，才會精確到的第五小數。
尼拉卡莎在15世紀發展了另一個的無窮級數，其收斂速度較格雷果里-萊布尼茨公式要快很多，該級數為：
以下比較二個級數的收斂速率：
計算前5項後，格雷果里-萊布尼茨級數的和跟的誤差為0.2，而尼拉卡莎級數和的誤差為0.002。尼拉卡莎級數收斂的快很多，因此也比較適合用來計算的數值。收斂更快的級數有梅欽類公式及楚德诺夫斯基算法，後者每計算一項就可以得到14位正確的小數值數。
二十世紀中期计算机技术的发展、革新再次引发了計算位數的熱潮。美國數學家约翰·伦奇及李維·史密斯在1949年利用桌上型計算機計算到1,120位。同年，喬治·韋斯納（George Reitwiesner）及约翰·冯·诺伊曼帶領的團隊利用反三角函数（arctan）的無窮級數，通过ENIAC計算到了小數第2,037位，花了70小時的電腦工作時間。這一紀錄後來多次由其他透過arctan級數计算出的結果打破（1957年到7480位小數，1958年到第一萬位數，1961年到第十萬位小數），直到1973年，人们计算出了小数点后的第一百萬位小數。
1980年代的两项發明加速了的計算。第一项是人们發现了新的的迭代法去计算的值，其計算速度比無窮級數會要快很多。另一项是人们發现了可以快速計算大數字乘積的乘法演算法。這類演算法在現代的計算上格外的重要，因為電腦大部分的工作時間都是在計算乘法。這類演算法包括Karatsuba算法、Toom–Cook乘法及以傅里叶变换為基礎的乘法演算法（傅里叶乘法）。
迭代演算法最早是在1975年至1976年间分别由美國物理學家及奧地利科學家独立提出。這两个演算法没有依赖無窮級數來計算。迭代會重覆一個特定的計算，将前一次的計算結果作为這一次的輸入值，使得計算結果漸漸的趨近理想值。此方式的原始版本其實是在160年前由卡爾·弗里德里希·高斯提出，現在稱為算术-几何平均数算法（AGM法）或高斯-勒让德算法。因為薩拉明及布蘭特都曾对此進行修改，因此这个算法也稱為薩拉明-布蘭特演算法。
迭代演算法因為收斂速度比無窮級數快很多，在1980年代以後廣為使用。無窮級數隨著項次的增加，一般來說正確的位數也會增加幾位，但迭代演算法每多一次計算，正確的位數會呈几何级数增长。例如薩拉明-布蘭特演算法每多一次計算，正確位數會是之前的二倍。1984年加拿大人及提出一個迭代演算法，每多一次計算，正確位數會是之前的四倍，1987年時有另一個迭代演算法，每多一次計算，正確位數會是之前的五倍。日本數學家金田康正使用的演算法在1955年及2002年之間創下了若干个紀錄。不過迭代演算法的快速收斂也有其代價，因为这个算法需要的内存的大小明顯的要比無窮級數要多。
一般而言，值并不需要过于精确便能够满足大部分的数学运算的需求。按照約爾格·阿恩特（Jörg Arndt）及克里斯托夫·黑內爾（）的计算，39個數位已足夠運算絕大多數的宇宙学的计算需求，因為這個精確度已能夠将可觀測宇宙圆周的精确度準確至一個原子大小。 尽管如此，人們仍然是奋力地運算出小数点后的上千甚至上百萬個數位。這一部分是出于人類對打破記錄的冲动，因为那些和有關的成就往往成為世界各地的新聞頭條。此外，这其中也有一些實際的好處，例如測試超级计算机、測試数值分析算法等（包括）。在純粹數學的领域中，计算的位数也能让人们来评定的隨機性。
现代计算的程序不仅仅局限于迭代算法。20世纪80与90年代，人们发现了一些可用来计算的新无穷级数，其收敛速度可与迭代算法媲美，而又有着复杂度、内存密集度更低的优势。印度数学家斯里尼瓦瑟·拉马努金是这方面的先驱，他在1914年发表了许多与相关的公式，这些公式十分新颖，极为优雅而又颇具数学深度，收敛速度也非常快。下式即为一例，其中用到了模方程：
这个无穷级数收敛速度远快于绝大多数反正切数列，包括梅钦公式。第一位使用拉马努金公式计算并取得进展的是，他在1985年算得了小数点后一千七百万位。拉马努金公式开创了现代数值近似算法的先河，此后波尔文兄弟和进一步发展了这类算法。后者于1987年提出了楚德诺夫斯基公式，如下所示：
此公式每计算一项就能得到的约14位数值，因而用於突破圆周率的数位的计算。利用这个公式，楚德诺夫斯基兄弟于1989年算得小数点后10亿（10）位，法布里斯·贝拉于2009年算得2.7千亿（2.7×10）位，亚历山大·易和近藤滋在2011年算得一万亿（10）位。类似的公式还有。
2006年，加拿大数学家西蒙·普勞夫利用PSLQ按照以下模版生成了几个计算的新公式：
其中formula_55为，formula_56是一个奇数，formula_57是普勞夫计算出的有理常数。
蒙特卡洛方法是以概率统计理论为指导的一类非常重要的数值计算方法，通过进行大量重复试验计算事件发生的频率，按照大数定律（即当试验次数充分大时，频率充分地接近于概率）可以求得的近似值。 布豐投針問題就是其中一个应用的例子：当一枚长度为formula_58的针随机地往一个画满间距为formula_59的平行线的平面上抛掷formula_60次， 如果针与平行直线相交了formula_61次，那么当formula_60充分大时就可根据以下公式算出的近似值：
另一个利用蒙特卡罗方法计算值的例子是随机地往内切四分之一圆的正方形内抛掷大量的点，落在四分之一圆内的点的数量与抛掷点的总量的比值会近似等于formula_46.
此外，还可以通过进行随机游走试验，并利用蒙特卡罗方法计算值，如抛掷一枚均匀的硬币formula_65次，并记录正面朝上的次数，所得结果中，正面朝上的次数formula_66服从二項分佈且
因为硬币均匀，所以次试验中每次试验结果相互独立。由此可定义一系列独立的随机变量formula_68，当抛掷结果为正面时formula_69否则为-1，且formula_70且取何值具有相同的概率（即，正面朝上和背面朝上的概率相同）。对随机变量formula_71求和可得
设为“硬币正面朝上的次数”减去“硬币反面朝上的次数”，即可得到formula_73。对式子进行变换，得formula_74，因此
可以证明，
并且当formula_65变大时，formula_81的值会渐近于formula_82，因此当formula_65充分大时可根据以下公式算出的近似值：
和其他计算值的方法相比，蒙特卡洛方法收敛速度很慢，而且无论进行多少次实验，都无从得知的估值已经精确到了第几位。因此，当追求速度或精度时，蒙特卡洛方法不适合用来估计。
1995年引入的兩個算法开辟了研究的新途径。因为每计算出一位数字，該數就会像流过阀门的水一样不会再出现在后续的计算过程中，这种新進算法叫做。这就与无穷级数及迭代算法形成对比——无穷级数和迭代算法自始至终的每一步计算都会涉及到之前所有步骤计算出的中间值。
1995年，美國數學家和斯坦利·拉比諾維茨（）发明了一种簡單的阀门算法，其運算速度類似arctan演算法，但速度比迭代算法要慢。
贝利-波尔温-普劳夫公式（BBP）是另一個阀门算法，屬於一种。1995年，西蒙·普勞夫等人發現
這個公式和其他的公式不同，可以在十六进制下計算的任意位數小數，而不用計算所有前面的小數位數。一个十六进制下的数位可计算得到特定一个二进制的数位；想要得到一个八进制数位的话，计算一、两个十六进制小數即可。目前也已發現一些這種演算法的變體，不過人们還沒有发现針對十進制、可以快速產生特定位數小數數字的位數萃取演算法。位數萃取演算法的一個重要用途是用來確認聲稱是計算到小數位數的新記錄：若有聲稱是新紀錄的計算結果出現，先將十進制的數值轉換到十六進制，再用贝利-波尔温-普劳夫公式，去確認最後的一些位數（用亂數決定），若這些位數都對，人们就能有一定把握认为此計算結果是对的。
在1998年到2000年之間，分布式计算計畫利用貝拉公式（贝利-波尔温-普劳夫公式的一種變體）計算的第10個位，結果是0。在2010年9月，一名雅虎員工利用公司的Apache Hadoop應用程式在上千台電腦上計算在2×10個数位开始，往后数的256個位，其第2×10個位剛好也是0。
值得注意的是，一些法律或歷史文本欲「定義π」為有理數，尤其是1897年的「印第安納州法案」，指明「直徑和圓周比例為四分之五比4（暗示「π= 3.2」）；和希伯來聖經中的一個段落，暗示「π= 3」。
在古代，人們使用60進制來計算。在60進制中，能被準確至小數點後八位（十進制），而這數字是3:8:29:44，即是：
（下一個60進制的數位為0）
除此之外，的近似值還能以以下方式表示： 可以通过蒙特卡洛方法来计算圆周率formula_97。
以原点（0, 0）为圆心，画一个半径为formula_98的圆。然后以原点为中心，画一个边长为formula_99的正方形。圆和正方形内切。
圆的面积为formula_100，正方形的面积为formula_101。
于是有，formula_102。
通过生成0到r之间随机数作为一个点的横纵坐标，所有点均落在正方形内。
通过统计圆内的点数formula_103与总点数formula_104，formula_105。
当随时点的数目增加时，所得结果会越接近于圆周率。
但是该方法也有不足之处。具体可参考蒙特卡洛方法。
的連分數表示式是[3; 7, 15, 1, 292, 1, 1, ...]。這連分數沒有任何模式。有很多用一條簡單的規矩然製成的廣義連分數
（其他連分數能在這裡查看。）
在1995年，西蒙·普勞夫發現了贝利－波尔温－普劳夫公式。這公式能在16進制中計算的任意數位，而不用計算之前的數位。
在1996年，西蒙·普勞夫發明了一個公式，能在O(log())的時間之內計算出在任意進制的第個數位。在1997年，法布里斯·贝拉發明了另一個公式，把計算所需時間縮短至O()。他又發明了在2進制計算的公式。
在1961年，和他的團隊在美國海軍研究實驗室計算了的前100,000數位。
他和他的團隊使用了兩個不同的幂級數來計算的數值。第一個幂級數中，任何錯誤都會造成一個比較高的數值；而另一個中，任何錯誤都會造成一個比較低的數值。所以如果兩個幂級數計算出同樣的數值，那個數值就肯定正確。美國海軍研究實驗室發放了的前100,000數位。
但是以上的兩個幂級數也要很長的時間才能計算出結果。相反地，約翰·梅欽的公式與反正切的泰勒级数一起使用則能很快地計算結果：
使用複數的極坐標系便能證實這公式，以以下的數學式開始：
這類的公式被稱為梅欽類公式。(注意，{ ,} = {239, 13}是佩爾方程「-2 = -1」的其中一個解答。)
印度數學家斯里尼瓦瑟·拉马努金發現了的很多其他表示方式。他與戈弗雷·哈罗德·哈代一起工作了很多年。
如果要計算小數點後很多位，計算者通常會使用高斯-勒让德算法，，和1976年發明的薩拉明 - 布倫特公式。
和/的小數點後首十萬位能在古腾堡计划裡查閱(參見#外部連結)。
在2002年12月，在東京大學進修的金田康正發放了小數點後1,241,100,000,000位的值，創造了新的世界記錄。他在2002年9月以六十四部日立的超級電腦計算出這值。這些電腦有1TB的記憶體，而且能在每秒執行2兆次運算。上一個記錄(21億位)所使用的電腦每秒只能執行1兆次運算。金田康正使用了以下公式：
這些近似值由於有太多數位，所以沒有實際用途，只是用來測試超級電腦。
在1997年，大衛·貝利（）、和西蒙·普勞夫發佈了一條新的公式來計算的值：
這公式能在不知道前 - 1數位的值之下，在2進制或16進制中計算出的第個數位的值。貝利的網頁包含了計算方法，而且把方法以幾個程式語言記下。計算出小數點後一兆數位的值。
法布里斯·贝拉推出了贝利－波尔温－普劳夫公式的改良版——貝拉公式：
還有其他計算的值的公式：
拉馬努金的公式收歛的速度異常地快，這公式後來在2000年演變成最快的公式（楚德諾夫斯基算法）：
大多数计算机代数系统可以计算出π和其他常见的数学常数到任何所需的精度。
计算π的功能中还包括许多通用库任意精度算术运算，例如CLN和MPFR。