黃金連分數 高精度除法

2021-06-14 06:13:42 字數 4435 閱讀 3934

#include"stdio.h"

#include"stdlib.h"

int a[101];//a儲存小數結果

int c[9000];//用來儲存被除數的每一位

int point;//記錄小數點的位置

int print(int x)

for(int i=j;i>=0;i--)

printf("%d",x[i]);

printf("\n");

return 1;

} //輸出乙個陣列中儲存的值

int add(int x,int y)

//計算兩個數字的長度

//x[0]儲存最低位

for(int i=0;i<1000;i++)

for(int i=0;i<1000;i++)

x[i]=temp_y[i];

/*printf("x: ");

print(x);

printf("y: ");

print(y);

*/return 1;

}int subcmp(int x,int y)

//確定最高位

for(i=999;i>=0;i--)

if(y[i]!=0) //確定最高位

if(j_x>j_y) return 1;//x中的值大於y中的

if(j_x=0;i--)

//確定最高位

for(i=999;i>=0;i--)

if(x[i]!=0) //確定最高位

//從數的地位到高位依次相減

for(i=0;i<=j_y;i++)

if(x[i]=1;j--)

xx[j]=xx[j-1];

xx[0]=0;//擴大十倍,相當於

}while(subcmp(xx,yy)>=0)

for(int j=999;j>=1;j--)

xx[j]=xx[j-1];

xx[0]=0;//每算完一位,擴大十倍

}//end for i

return 1;}

int main()

for(i=0;i<1000;i++)

x[0]=1;

y[0]=2;

for(i=0;i<300;i++)

add(x,y);

printf("此時被除數的值是:\n");

print(x);

printf("此時除數的值是:\n");

將上訴**微微修改,可以求得更高精度的**分割數:

最後附上網路上給出的**分割點具體數字:

**分割數是無理數,前面的2000位為: 

0.6180339887 4989484820 4586834365 6381177203 0917980576 : 50

2862135448 6227052604 6281890244 9707207204 1893911374 : 100

8475408807 5386891752 1266338622 2353693179 3180060766 : 150

7263544333 8908659593 9582905638 3226613199 2829026788 : 200

0675208766 8925017116 9620703222 1043216269 5486262963 : 250

1361443814 9758701220 3408058879 5445474924 6185695364 : 300

8644492410 4432077134 4947049565 8467885098 7433944221 : 350

2544877066 4780915884 6074998871 2400765217 0575179788 : 400

3416625624 9407589069 7040002812 1042762177 1117778053 : 450

1531714101 1704666599 1466979873 1761356006 7087480710 : 500

1317952368 9427521948 4353056783 0022878569 9782977834 : 550

7845878228 9110976250 0302696156 1700250464 3382437764 : 600

8610283831 2683303724 2926752631 1653392473 1671112115 : 650

8818638513 3162038400 5222165791 2866752946 5490681131 : 700

7159934323 5973494985 0904094762 1322298101 7261070596 : 750

1164562990 9816290555 2085247903 5240602017 2799747175 : 800

3427775927 7862561943 2082750513 1218156285 5122248093 : 850

9471234145 1702237358 0577278616 0086883829 5230459264 : 900

7878017889 9219902707 7690389532 1968198615 1437803149 : 950

9741106926 0886742962 2675756052 3172777520 3536139362 : 1000

1076738937 6455606060 5921658946 6759551900 4005559089 : 1050

5022953094 2312482355 2122124154 4400647034 0565734797 : 1100

6639723949 4994658457 8873039623 0903750339 9385621024 : 1150

2369025138 6804145779 9569812244 5747178034 1731264532 : 1200

2041639723 2134044449 4873023154 1767689375 2103068737 : 1250

8803441700 9395440962 7955898678 7232095124 2689355730 : 1300

9704509595 6844017555 1988192180 2064052905 5189349475 : 1350

9260073485 2282101088 1946445442 2231889131 9294689622 : 1400

0023014437 7026992300 7803085261 1807545192 8877050210 : 1450

9684249362 7135925187 6077788466 5836150238 9134933331 : 1500

2231053392 3213624319 2637289106 7050339928 2265263556 : 1550

2090297986 4247275977 2565508615 4875435748 2647181414 : 1600

5127000602 3890162077 7322449943 5308899909 5016803281 : 1650

1219432048 1964387675 8633147985 7191139781 5397807476 : 1700

1507722117 5082694586 3932045652 0989698555 6781410696 : 1750

8372884058 7461033781 0544439094 3683583581 3811311689 : 1800

9385557697 5484149144 5341509129 5407005019 4775486163 : 1850

0754226417 2939468036 7319805861 8339183285 9913039607 : 1900

2014455950 4497792120 7612478564 5916160837 0594987860 : 1950

0697018940 9886400764 4361709334 1727091914 3365013715 : 2000

黃金連分數

分割數0.61803.是個無理數,這個常數十分重要,在許多任務程問題中會出現。有時需要把這個數字求得很精確。對於某些精密工程,常數的精度很重要。也許你聽說過哈勃太空望遠鏡,它首次公升空後就發現了一處人工加工錯誤,對那樣乙個龐然大物,其實只是鏡面加工時有比頭髮絲還細許多倍的一處錯誤而已,卻使它成了 近...

黃金連分數

分割數0.61803.是個無理數,這個常數十分重要,在許多任務程問題中會出現。有時需要把這個數字求得很精確。對於某些精密工程,常數的精度很重要。也許你聽說過哈勃太空望遠鏡,它首次公升空後就發現了一處人工加工錯誤,對那樣乙個龐然大物,其實只是鏡面加工時有比頭髮絲還細許多倍的一處錯誤而已,卻使它成了 近...

黃金連分數

分割數0.61803.是個無理數,這個常數十分重要,在許多任務程問題中會出現。有時需要把這個數字求得很精確。對於某些精密工程,常數的精度很重要。也許你聽說過哈勃太空望遠鏡,它首次公升空後就發現了一處人工加工錯誤,對那樣乙個龐然大物,其實只是鏡面加工時有比頭髮絲還細許多倍的一處錯誤而已,卻使它成了 近...