1樓:匿名使用者
你的程式不copy僅是少個
括號,直接給你正確的,自己看看
function y=calpinew(k)for n=1:k
a(1)=sqrt(2);
a(n+1)=sqrt(a(n)+2);
end;
vpa(2^(k+2)/(prod(a)))補充:下面的j控制顯示圓周率的精度
function y=calpinew(k,j)for n=1:k
a(1)=sqrt(2);
a(n+1)=sqrt(a(n)+2);
end;
vpa(2^(k+2)/(prod(a)),j)
2樓:匿名使用者
最後一行少乙個右括號。
3樓:匿名使用者
最後bai一du
行少zhi了dao個括版
號權??? error: file: c:\matlab6p5\work\calpinew.m line: 6 column: 34
")" expected, "end of line" found.
4樓:有空飄過的
拜託,vpa(2.^(k+2)/(a(1)*prod(a(n+1))) 這行少了乙個右括號
5樓:匿名使用者
vpa函式後面應該還有個表示精度的引數吧.
用matlab程式求圓周率小數點後一百萬位,急求,**等!有採納
6樓:匿名使用者
理論上抄說,可以用下面的語句
vpa(sym(pi),1e6)
來求,襲例如,求50位有效數字的做法是:
>> vpa(sym(pi),50)
ans =
3.1415926535897932384626433832795028841971693993751
或者>> vpa(sym('pi'),50)ans =
3.1415926535897932384626433832795028841971693993751
但實際操作上,可能會遇到以下幾個問題:
1、運算時間可能會很長;
2、記憶體是否夠用;
3、超過一定長度的字串在命令視窗裡無法顯示(可以用char轉換,然後寫到檔案中)。
7樓:勤奮的2012飛虎
在命令視窗輸入pi ,在把結果顯示的位數設定下
8樓:匿名使用者
有點意思………………………………………………………………………………今天晚上試試看!
使用程式matlab,割圓術求圓周率π
9樓:我行我素
function calpi(n) %定義函式bai,n是計算次du數,正整數
syms a; %定義符zhi號變數
for i=1:n %開始迴圈
a=sqrt(2-sqrt(4-a^dao2)); %計算end
a=subs(a,'a','1');%替代計算y=3*2^n*vpa(a,n+5);%求最終內結果容pi=y %顯示最終結果
利用matlab求圓周率
10樓:我行我素
n=1;
pi4=1/n;
delta=abs(pi-pi4*4);
jingdu=0.001;
ticwhile delta>jingdun=n+1;
pi4=pi4+(-1)^(n-1)*1/(2*n-1);
delta=abs(pi-pi4*4);
ends1=sprintf('精度達到%f時的項數%d',jingdu,n);
s2=sprintf('pi的近似值是%f', pi4*4);
disp(s1),disp(s2)
h=toc;
s3=sprintf('使用迴圈語句的時間是%f秒',h);
disp(s3)
tick=1:1:1000;
pi_4=sum((-1).^(k-1).*1./(2*k-1));
cha=abs(pi-4*pi_4);
h1=toc;
st1=sprintf('精度達到%f時的項數%d',cha(end),k(end));
st2=sprintf('pi的近似值是%f', pi_4*4);
st3=sprintf('使用向量的時間是%f秒',h1);
disp(st1);
disp(st2);
按上面程式試試
matlab計算圓周率
11樓:匿名使用者
^第一bai問哈du~
zhia=1;
n=0;
my_pi=0;
while(a>0.01)
n=n+1;
my_pi=my_pi-1/(2*n-1)*(-1)^n;
a=1/(2*n-1)*4;
endmy_pi=my_pi*4
第二問dao哈專~屬
a=1;
n=0;
my_pi=0;
while(a>0.001)
n=n+1;
my_pi=my_pi-1/(2*n-1)*(-1)^n;
a=abs(pi-4*my_pi);
endn
用matlab寫程式求圓周率(精度e=10^-7),求大神幫助,萬分感謝 5
12樓:我行我素
圓周率來的計算
方法很多,我提供自乙個:bai
n=1;
absol=0.1;
while absol>1e-7
syms a
for i=1:n
a=sqrt(2-sqrt(4-a^2));
enda=subs(a,'a','1');
y=3*2^n*vpa(a,n+5);
absol=abs(double(pi-y));
disp('絕對誤差大於du1e-7,再計算zhi')
n=n+1;
enddisp('絕對誤差小於dao1e-7,不再計算')s=sprintf('計算次數n=%d',n);
disp(s)
pi=y
13樓:匿名使用者
(1)不要顯bai示的在語句後面加上
du分號zhi
(2)不知道你有沒有儲存在dao
正確的路徑上
(3)在命令符內下先clear一下
我修改容了一點點,你看一下:
function calpi(n)
syms a;
for i=1:n
a=sqrt(2-sqrt(4-a^2));
enda=subs(a,'a','1');
y=3*2^n*vpa(a,n+5);
pi=y
儲存在work資料夾下,calpi.m
>>clear
>>calpi(100)
>>pi =
3.1415926535897932384626433832795你自己再弄一下,應該可以的!
使用程式Matlab,割圓術求圓周率
function calpi n 定義函式bai,n是計算次du數,正整數 syms a 定義符zhi號變數 for i 1 n 開始迴圈 a sqrt 2 sqrt 4 a dao2 計算end a subs a,a 1 替代計算y 3 2 n vpa a,n 5 求最終內結果容pi y 顯示最終...
圓周率為什麼是無理數,為什麼圓周率會是乙個無理數,明明圓形是那麼簡單的
為什麼圓周率 是無理數?這裡講解乙個簡短的證明。假設 是有理數,則 a b,a,b為自然數 令f x x n a bx n n 若0 0 0 以上兩式相乘得 0 當n充分大時,在 0,區間上的積分有 0 f x sinxdx n 1 a n n 1 1 又令 f x f x f x f x 4 1 ...
我想知道圓周率是怎麼算出來的 沒有個準確的數值
幾何法時期 憑直觀推測或實物度量,來計算 值的實驗方法所得到的結果是相當粗略的。真正使圓周率計算建立在科學的基礎上,首先應歸功於阿基米德。他是科學地研究這一常數的第一個人,是他首先提出了一種能夠藉助數學過程而不是通過測量的 能夠把 的值精確到任意精度的方法。由此,開創了圓周率計算的第二階段。圓周長大...