数学建模matlab作业

发布 2020-04-15 14:44:28 阅读 8645

数统应数 20121323003 王妍。

数统应数 20121323022 胡可旺。

1 生成5阶矩阵,使其元素满足均值为1,方差为4的正态分布;

**:y=1+sqrt(4)*randn(5)

结果:2,生成一个20行5列矩阵a,其元素分别以概率.2取自这三个整数,然后将“删除a的全零行”之后的结果赋给矩阵b;

for i = 1:20

for j = 1:5

p = rand();

if p<=0.7

a(i,j) =0;

elseif p>0.7&&p<=0.8

a(i,j) =1;

elsea(i,j) =4;

endend

endb =

for i = 1:20

flag = true;

for j = 1:5

if a(i,j)~=0

flag=false;

break;

endend

if ~flag

b = b;a(i,:)

endend

b3, (函数文件)对于输入的正整数,判断其是否为素数。

function [ output_args ] u3( n )

u3 summary of this function goes here

detailed explanation goes here

y=1;for i=2:1:sqrt(n)

if rem(n,i)==0

y=0;break

endend

if(y==1)

fprintf('是素数')

elsefprintf('不是素数')

end4,(函数文件)对于输入的正整数,求出其中0的个数;

function [ i ] u4( n )

u4 summary of this function goes here

detailed explanation goes here

i=0;while n/10~=0

if rem(n,10)==0

i=i+1;

endn=fix(n/10);

end5,(函数文件)有n个人围成一圈,按序列编号。从第一个人开始报数,数到m时该人退出,并且下一个从1开始重新报数,那么最后剩下的那个人的原始编号为多少?(n>m,例如n=20,m=7

function [ x ] u5( n,m )

u5 summary of this function goes here

detailed explanation goes here

x=1:n;

y=zeros(1,n-m+1);

t=0;p=size(x,2);

s=fix(p/m);

while s>0

j=1;while j<=s

y(t+j)=x(m*j);

j=j+1;

endx([m:m:m*s])=

if m*s x=x([(m-1)*s+1):(p-s),1:((m-1)*s)])

endt=t+s;

p=size(x,2);

s=fix(p/m);

end6, 对曲线 | x^2+y^2+z^2=4

x+y+z=1作图,并修饰。

ezplot('x^2+y^2+(1-x-y)^2-4',[2,2,-2,2])

曲面作图:z=x^2+y^2+sin(xy),定义域自拟;

x=0:100;y=0:100;

x,y]=meshgrid(x,y);

z=x.^2+y.^2+sin(x.*y);

plot3(x,y,z)

8,函数f(x)定义为如下的行列式:

x x^2 x^3 |

1 2x 3x^2 |

0 2 6x |

求f(x)在x=1处的数值导数,并画图比较数值导数与真实导函数之间的差别。

syms x;

a=[x x^2 x^3 ;

1 2*x 3*x^2;

0 2 6*x ];

b=det(a);

y=diff(b,x)

subs(y,1)

lims=[-5,5];

fplot('y',lims);

hold on;

fplot('6*x^2',lims)

9,当x取值pi/6,2pi/6,..5pi/6 时,

求 ( sin(x) )2 + cos(2x) )2的数值导数和数值二阶导数;

syms x;

a=sin(x).^2+cos(2*x).^2;

x=pi/6:pi/6:5*pi/6;

subs(diff(a),x)

subs((diff(a,2)),x)

10,已知整数1,2,..10的平方根,请用三次样条插值估算2.3的平方根。

n=1:1:10;

m=sqrt(n);

y=interp1(n,m,2.3,'spline')

11, 某一过程测量得:

x:1.2000 1.4000 1.6000 1.8000 2.0000 2.2000 2.4000 2.6000

y:2.9462 3.4094 3.8090 4.1643 4.4794 4.7654 5.0254 5.2668

请用函数y=a+b*log5(x)对此进行曲线拟合;

x=[1.2000,1.4000,1.6000,1.8000,2.0000,2.2000,2.4000,2.6000];

y=[2.9462,3.4094,3.8090,4.1643,4.4794,4.7654,5.0254,5.2668];

fun1=@(c,x) c(2).*log(x)./log(5)+c(1);

b=lsqcurvefit(fun1,[1,1],x,y);

plot(x,y,'+x,fun1(b,x))

12,线性规划(linprog):某工厂生产甲、乙、丙三种产品,单位产品所需工时分别为个工时;

单位产品所需原材料分别为公斤;单位产品利润分别为2元、3元、5元。

工厂每天可利用的工时为12个,可**的原材料为15公斤。

试确定使总利润为最大的日生产计划和最大利润。

f=[-2,-3,-5];

a=[2,3,1;3,1,5];b=[12;15];

x,y]=linprog(f,a,b,0,0,0]);linprog是求min的。

x=xz=-y

matlab文件数学建模作业 x

1 syms x m 433 limit m x sin m x xa3 0 结果 ans 81182737 6 2 syms x m 433 limit m x sin m x xa3 x inf 结果 ans 0 syms x m 433 y exp x cos m x 1000 diff y,...

数学建模培训作业 MATLAB编程部分

数学建模培训作业。matlab编程部分 1 请使用switch语句将百分制的学生成绩转换为五级制的成绩输出。2 猜数游戏 首先由计算机随机产生一个 1,100 之间的一个整数,然后由用户猜测所产生的这个数。根据用户猜测的情况给出不同的提示,如果猜测的数大于产生的数,则显示 high 小于则显示 lo...

数学建模Matlab练习

matlab练习四。1.绘制两个一元函数的曲线图 例如y sin x y cos x 加上标注说明,包括坐标 抬头 曲线说明等。x 0 pi 30 2 pi y sin x plot x,y,ob markersize 10 hold on y1 cos x plot x,y1,markersize...