Oracle中實現圓周率計算(一)
今天兩個同事用JAVA實現圓周率一百位小數的實現。一個同事問我要不要試試,由於很長時間沒有寫過JAVA程式碼,而且本身JAVA的水平就很差,於是打算用ORACLE實現。
其實Oracle中使用現成的函式就可以直接到的圓周率,比如:
SQL> SELECT ACOS(-1) FROM DUAL;
ACOS(-1)
----------
3.14159265
可以透過調整數值型別的引數來獲取38位精度:
SQL> SET NUMW 40
SQL> SELECT ACOS(-1) PI FROM DUAL;
PI
----------------------------------------
3.1415926535897932384626433832795028842
如果不能使用現成的函式,而要自己計算,則要麻煩一些。
當時同事問我的時候,我告訴他一分種左右就可以搞定,而實際證明,寫這個程式碼用了5分鐘左右:
SQL> CREATE OR REPLACE PROCEDURE P_PI wrapped
2 a000000
3 1
4 abcd
5 abcd
6 abcd
7 abcd
8 abcd
9 abcd
10 abcd
11 abcd
12 abcd
13 abcd
14 abcd
15 abcd
16 abcd
17 abcd
18 abcd
19 7
20 ec 11f
21 bLpzn0N21EJAQZmxUW0FNNv3TiEwgwDQ7UhqfC/WmGCua2Lf0zZFLKG/pZHGJ/bKzDYxl/z+
22 qm17DFusHSThkSZkEuy6LmGKASmXQXlIcj5c2rC7LQDfmeLEhifcu+/Euy0ZqsYYpFeKtfeC
23 Vamv1TmuhyHFqL1bdFkURszthPM58C+Jwz4juIdQ3pEBIhhdUWdwH2nhe8wAWXYtDklgqX3m
24 d05w6NIDkQvcTtJx/uoF8gVIBzPG8V7EYd5VJ/6IIw24DU+CH20QJHWJwe4eKG3j3/I=
25
26 /
過程已建立。
這時10.2版本下WRAP後的過程,利用這個程式碼可以返回圓周率100位以內的任意位小數:
SQL> SET SERVEROUT ON
SQL> EXEC P_PI
3.1415926535
PL/SQL 過程已成功完成。
SQL> EXEC P_PI(1)
3.1
PL/SQL 過程已成功完成。
SQL> EXEC P_PI(5)
3.14159
PL/SQL 過程已成功完成。
SQL> EXEC P_PI(38)
3.14159265358979323846264338327950288419
PL/SQL 過程已成功完成。
SQL> EXEC P_PI(100)
3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706
PL/SQL 過程已成功完成。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-428174/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle中實現圓周率計算(三)Oracle
- Oracle中實現圓周率計算(二)Oracle
- 圓周率的計算 (轉)
- VB計算圓周率的方法
- 幾種計算圓周率的軟體比較
- 使用Kubernetes裡的job計算圓周率後2000位
- PLSQL實現計算圓的面積SQL
- 圓周率π的計算曆程及各種腦洞大開的估計方法
- Google:Google Cloud再次打破了百萬億位的圓周率計算紀錄GoCloud
- 如何用python求圓周率?Python
- 蒙特卡羅法求圓周率
- 新紀錄!谷歌 Cloud 計算出圓周率“ π” 第 100 萬億位數谷歌Cloud
- 蒙特卡羅演算法求圓周率Pi的值演算法
- 【倉頡】入門文件程式碼圓周率估算程式碼更正
- 一個比想象中更騷氣的圓-svg實現SVG
- ios實現圖片圓角方式小計iOS
- Android 圓角、圓形 ImageView 實現AndroidView
- 圓形視訊和圓角視訊的一種實現方式
- 橢圓曲線加法原理計算
- 計算圓的面積程式碼
- Flutter實現一個較好看的計算器Flutter
- 前端 JavaScript 實現一個簡易計算器前端JavaScript
- JS_實現一個簡易計算器JS
- JavaScript實現一個簡易的計算器JavaScript
- Java實現一個簡單的計算器Java
- 如何實現邊緣計算中的節點自治
- 機器學習中那些相似度的計算方法及實現機器學習
- ACCESS 在資料表中實現簡單計算
- 一個頁面內放入文字框和按鈕,實現文字框和按鈕輸繫結,輸入圓半徑,計算圓面積並彈窗計算結果顯示出來。(js)JS
- Oracle實現統計Oracle
- Android Xfermode 實戰 實現圓形、圓角圖片Android
- 用java實現一個簡單的計算器Java
- js實現四則計算(中綴,字尾表示式)JS
- UIImageView 實現圓角效果UIView
- css實現圓形、橢圓和半圓效果程式碼例項CSS
- 在相親原始碼開發中,如何實現圓角及特殊圓角的使用?原始碼
- Oracle中實現連乘Oracle
- oracle實驗記錄 (oracle consistent gets 計算)Oracle