Mathematica问题

问题描述:

Mathematica问题
1.用牛顿迭代法求函数g(x)=(x - 5)^(-2/3)*(x - 17)^(5/3)的根,并画出其迭代过程的蛛网图.
2.当圆沿着给定的曲线滚动时,试建立相对于该圆位置固定的点的轨迹所对应的参数方程,并通过Mathematica模拟其形成过程和观察最终的曲线形状与特征,其中定点的位置为(1)在圆周外(2)在圆上(3)在圆内
3.随机产生90个正整数,(介于1-365之间),用这90个正整数代表一个班90个同学的生日),然后统计数据,观察是否有3人以上的人生日相同.当90个人中有3个人生日相同时,输出结果是“1”,否则为“0”.如此重复200次,计算这一事件发生的概率?要求模拟三次以上并记录下每次模拟计算的频率值?
要求:
需要mathematica源代码
关于第一个问题,方程明显有一个根x=17
第三个问题指的是有三个同学生日相同即可。
关于第二题,先建立圆上定点轨迹的参数方程,注意是【滚动】,像做摆线一样。把你给的程序修改后得到的是个滑动的结果。

第一个问题:
f[x_] := 2 x^2;
xlist = NestList[# - f[#]/f'[#] &,0.5,4]; ylist = f[xlist]; list1 = Transpose[{xlist,ylist}]; list2 =
Transpose[{Drop[xlist,1],Table[0,{Length[xlist] - 1}]}];
list = Riffle[list1,list2];
iterplot = ListLinePlot[list]; funplot = Plot[f[x],{x,0,1},PlotRange -> {0,1},PlotStyle -> {Black}]; Show[{funplot,iterplot}]
第二个问题:
singleTest := Module[{data,dataSorted,exist,howmanysame = 2},
data = RandomInteger[{1,365},90]; dataSorted = Sort[data];
If[Or @@ (Map[dataSorted[[#]] == dataSorted[[# + howmanysame]] &,
Range[Length[data] - howmanysame]]),exist = 1,exist = 0];
exist];
result = Table[singleTest,{200}];
In[203]:= Total[result]/200 // N
Out[203]= 0.505
第三个问题:
x[t_] := t; y[t_] := Sin[t]; r = 0.5;
Manipulate[
Show[
{ParametricPlot[{x[t],y[t]},{t,0,2 \[Pi]},
PlotRange -> {{0,2 \[Pi]},{-2,2}}],
Graphics[{
Circle[{x[a],y[a]} + r*{- y'[a],x'[a]}/Norm[{x'[a],y'[a]}],r],
Point[{x[a],y[a]} + r*{- y'[a],x'[a]}/Norm[{x'[a],y'[a]}]]}]}
],
{a,0,2 \[Pi]}]
第二个和第三个粘贴反了.一些意见,1里面方程似乎没有根;3里面到底是三个还是三个以上说的不清楚.这个让人很不爽.
2里面我只做了圆心,算是hint吧,其他可以自己搞定的
那么1,3解决了
关于2你说的无摩擦滚动=滑动+绕圆心一定速率的转动.依我看只有用弧长参数代码才容易写.不过就是x,y各增加一项,琢磨琢磨吧:)