蒙特卡罗求积分值
近似求解0到1上e^x的积分
```c在这里插入代码片
a=0;b=1;m=20000%迭代20000次
s=0;H=exp(1);%设置为落在曲边题型内的点数
for i=1:m
xi=rand();yi=Hrand();
if yi<exp(xi)
s=s+1;
end;
end;
fprintf(’%s%g\n’,‘exp(x)在[0,1]上的积分约等于’,H(b-a)*s/m)
这样算的结果比较接近e-1
# 求勾股数
```c
m =
1 至 8 列
3 5 6 7 8 9 9 10
4 12 8 24 15 12 40 24
5 13 10 25 17 15 41 26
9 至 16 列
11 12 12 13 14 15 15 15
60 16 35 84 48 20 36 112
61 20 37 85 50 25 39 113
17 至 24 列
16 16 17 18 18 19 20 20
30 63 144 24 80 180 21 48
34 65 145 30 82 181 29 52
25 至 32 列
20 21 21 22 24 24 24 24
99 28 72 120 32 45 70 143
101 35 75 122 40 51 74 145
33 至 40 列
25 26 27 27 28 28 28 30
60 168 36 120 45 96 195 40
65 170 45 123 53 100 197 50
41 至 48 列
30 32 32 33 33 33 35 35
72 60 126 44 56 180 84 120
78 68 130 55 65 183 91 125
49 至 56 列
36 36 36 36 39 39 40 40
48 77 105 160 52 80 42 75
60 85 111 164 65 89 58 85
57 至 64 列
40 42 42 44 45 45 48 48
96 56 144 117 60 108 55 64
104 70 150 125 75 117 73 80
65 至 72 列
48 48 48 49 50 51 51 52
90 140 189 168 120 68 140 165
102 148 195 175 130 85 149 173
73 至 80 列
54 55 56 56 56 57 57 60
72 132 90 105 192 76 176 63
90 143 106 119 200 95 185 87
81 至 88 列
60 60 60 60 63 64 65 65
80 91 144 175 84 120 72 156
100 109 156 185 105 136 97 169
89 至 96 列
66 66 69 70 72 72 72 75
88 112 92 168 96 135 154 100
110 130 115 182 120 153 170 125
97 至 104 列
75 78 78 80 80 81 84 84
180 104 160 84 150 108 112 135
195 130 178 116 170 135 140 159
105 至 112 列
85 87 88 88 90 93 95 96
132 116 105 165 120 124 168 110
157 145 137 187 150 155 193 146
113 至 120 列
96 99 99 100 102 104 105 108
128 132 168 105 136 153 140 144
160 165 195 145 170 185 175 180
121 至 127 列
111 114 117 119 120 120 130
148 152 156 120 126 160 144
185 190 195 169 174 200 194
num=0;m=[];
for a=1:200
for c=a+1:200
b=sqrt(c^2-a^2);
if (b==floor(b))&(b>a)
num=num+1;
m(:,num)=[a,b,c];
end
end
end