本文目录一览:
可以这样:parameter::pi=3.1415926
real a
a=pi/4
!简程
!前略
k = 0
do i = 1, 100000000
call random_number(x)
call random_number(y)
if ((x + y) .le. 1.0) then
k = k + 1
end if
enddo
p = k * 1.0 / N * 4
print *, p
end
思路:假设我们有一个边长为1的正方形,这个正方形必然有一个内切圆,它的直径等于正方形的边长,半径为0.5 。正方形的面积是1,其内切圆的面积为 PI*(0.5)^2 。假设只考虑第一象限,我们随机生成很多点,考虑这个点落在圆里的概率,这个概率趋向于几何概率,也就是第一象限圆的面积和正方形面积的比值。随机产生的点越多,最后求得的PI值越精确
FORTRAN中圆周率常量默认为PI(不区分大小写),即你写程序时可以直接用PI代替圆周率而不用再重新定义了~
π 这个字符本身不可以做为源代码的关键字或符号名(包括变量名,函数名等)
编译器也不会赋予它 3.141592654 的含义。
但是,作为一个字符,你可以在字符串变量里使用他对某些变量赋值,也可以从文件或屏幕获取这个字符作为字符串的值
sum=0;
i=1;
flag=1;
while(1/i1e-7) %改成1e-6会算的更快些,但准确度就不高了
sum=sum+flag*1/i ;
flag=flag*-1;
i=i+2;
end
result=sum*4;
vpa(result,10) %括号里的是显示的位数
IntegerPartπ=3.1415926535897934128560682837110978580034716408943852728267476996530016948790340418959301082910079416264281192230901703777745530807551055159
5421629806536647772578253170124787992149121377613206700429845417677516\
8903708597218886499570819156868067869564995890460702797098022951569797\
2611163327911835315856592589661756124136403698717227266011395187577799\
6143497928041403970922090797453054129809961717689422518838780917345830\
6294312299993933149563345957274018142951499071309939834776368222159653\
3147836114734931398984766337745391347734943663922272198744566591626377\
9635455243399943770887563172615200111900341157286765492773105117512538\
8315448802843270403145236172475751431338661979949220554051187738393352\
6088913649538966202441774630049330662202297510414746487356915318932920\
3505787464934581844174865800164438648201090703637332618163140534244579\
0735356225865079881935863853122892846407572215828758921436073427005296\
9553425779745176041701380873338188327070555262388514151936634188924616\
667021142771913195520