日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

今天无聊弄得C++

發布時間:2023/12/15 c/c++ 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 今天无聊弄得C++ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

// chp2.cpp : 定義控制臺應用程序的入口點。 //#include "stdafx.h" #include <stdlib.h> #include <string.h> #include <time.h> #include <math.h>//數據結構 //數組(Array)、堆棧(Stack)、隊列(queue)、鏈表(Linked List)、樹(Tree)、圖(Grahp)、堆(Heap)、散列表(Hash)// // 判斷是否為2的n次冪 bool PowofTwo(int n) {return !(n & (n-1)); }// // 利用割圓術求pi的近似值, 假設有一個半徑是1的圓,第一次切割在其內部內接正六邊形。 // 正六邊形的變長為y1, 根據幾何知識,y1=1, 圓周長近似為L1=6*y1 // 第二次切割,在正六邊形的基礎上,擴展為12邊形時,邊長為y2, y2^2=2-sqrt(4-y1^2) // pi≈3*2^n*yn double cyclotomic(int n) {double k, yy;int i;long s;double pi = 0.0f;i = 1; //第一次切割s = 6; //初始為6邊形yy = 1.0f;k = 3.0f;while (i<=n){ pi = k*sqrt(yy);printf("第%d次切割,為正%ld多邊形,PI近似為%.24f\n", i, s, pi);s *= 2; //邊數加倍yy = 2-sqrt(4-yy); //內接多邊形的變長的平方值k *= 2.0f; //累積前面的系數3*2^ni++;}return pi; }// // 蒙特卡羅算法(Monte Carlo) // 一個半徑為1的圓,他在第一象限的1/4圓面積為pi/4 // 在上面接一個正方形,面積為1,兩者相比pi/4, 概率算法 // 隨即產生一個點,判斷是不是在圓形區域,比上總點數,即為pi/4 double MontePI(int n) {int sum;double pi;double x, y;sum = 0;srand((unsigned)time(NULL));for (int i=0; i<n; i++){x = (double)rand()/RAND_MAX; //產生0~1的隨機數y= (double)rand()/RAND_MAX;if ((x*x + y*y) <= 1)sum++;}pi = 4.0*sum/n;return pi; }int _tmain(int argc, _TCHAR* argv[]) {int *pnums = new int[100];memset(pnums, 0, 100);srand((unsigned)time(NULL));int num8;int temp;for (int i = 0; i<100; i++){pnums[i] = rand()%500;num8 = (pnums[i] + 0x7)&~0x7; //兩種方法將數字提升到8的倍數temp = (pnums[i] + 0x7)/8*8;printf("%d->%d, %d", pnums[i], num8, temp);if (PowofTwo(pnums[i])){printf("--->pow of two");}printf("\n"); //換行}printf("\n\n");//clean:delete[] pnums;////計算pi的近似值printf("計算pi的近似值\n");cyclotomic(12);printf("\n\n");for (int i=1; i<10; i++){printf("Monte Carlo pi = %.24f\n", MontePI(i*1000) );}return 0; }
392->392, 392
35->40, 40
51->56, 56
72->72, 72
245->248, 248
15->16, 16
158->160, 160
252->256, 256
158->160, 160
122->128, 128
154->160, 160
334->336, 336
82->88, 88
96->96, 96
192->192, 192
101->104, 104
116->120, 120
52->56, 56
94->96, 96
257->264, 264
58->64, 64
70->72, 72
337->344, 344
67->72, 72
382->384, 384
142->144, 144
25->32, 32
492->496, 496
14->16, 16
469->472, 472
217->224, 224
363->368, 368
387->392, 392
317->320, 320
233->240, 240
415->416, 416
199->200, 200
422->424, 424
217->224, 224
472->472, 472
184->184, 184
498->504, 504
92->96, 96
244->248, 248
172->176, 176
44->48, 48
133->136, 136
390->392, 392
440->440, 440
373->376, 376
341->344, 344
246->248, 248
214->216, 216
183->184, 184
465->472, 472
103->104, 104
83->88, 88
123->128, 128
141->144, 144
37->40, 40
71->72, 72
152->152, 152
333->336, 336
257->264, 264
62->64, 64
240->240, 240
170->176, 176
292->296, 296
490->496, 496
139->144, 144
32->32, 32--->pow of two
55->56, 56
190->192, 192
54->56, 56
376->376, 376
163->168, 168
35->40, 40
273->280, 280
233->240, 240
79->80, 80
21->24, 24
436->440, 440
59->64, 64
485->488, 488
4->8, 8--->pow of two
118->120, 120
97->104, 104
123->128, 128
383->384, 384
215->216, 216
482->488, 488
315->320, 320
369->376, 376
433->440, 440
102->104, 104
305->312, 312
290->296, 296
417->424, 424
451->456, 456
363->368, 368




計算pi的近似值
第1次切割,為正6多邊形,PI近似為3.000000000000000000000000
第2次切割,為正12多邊形,PI近似為3.105828541230249800000000
第3次切割,為正24多邊形,PI近似為3.132628613281236900000000
第4次切割,為正48多邊形,PI近似為3.139350203046872100000000
第5次切割,為正96多邊形,PI近似為3.141031950890529800000000
第6次切割,為正192多邊形,PI近似為3.141452472285344300000000
第7次切割,為正384多邊形,PI近似為3.141557607911622100000000
第8次切割,為正768多邊形,PI近似為3.141583892148935900000000
第9次切割,為正1536多邊形,PI近似為3.141590463236761700000000
第10次切割,為正3072多邊形,PI近似為3.141592106043048300000000
第11次切割,為正6144多邊形,PI近似為3.141592516588154600000000
第12次切割,為正12288多邊形,PI近似為3.141592618640789400000000




Monte Carlo pi = 3.192000000000000200000000
Monte Carlo pi = 3.206000000000000000000000
Monte Carlo pi = 3.173333333333333300000000
Monte Carlo pi = 3.141000000000000000000000
Monte Carlo pi = 3.138399999999999900000000
Monte Carlo pi = 3.133999999999999900000000
Monte Carlo pi = 3.129142857142857000000000
Monte Carlo pi = 3.123499999999999900000000
Monte Carlo pi = 3.125777777777778000000000
請按任意鍵繼續. . .




總結

以上是生活随笔為你收集整理的今天无聊弄得C++的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。