MATLAB作业练习

X(1)=0;
 
X(2)=1;
 
    for n=3:40
 
    X(n)=X(n-1)+2*X(n-2);
 
    end
 
    disp(X)

 a=[];
b=[];
for i=1:1000
    for j=1:1000
    if(i*i-100*j==i)
        a=[a,i];
        b=[b,j];
    end
    end
end
disp(a);
disp(b);

 

  1. 根据股票交易数据绘图

已知文件SH600004.mat包含了一个矩阵M.通过程序“load SH600004.mat”可以导入该文件存储的矩阵M.矩阵M存储了一只股票的交易数据.矩阵M的每行存储了一天的交易数据.以第i行为例说明矩阵M各列的含义如下:

  M(i,1) 日期,整数.如20210301表示矩阵M本行数据为2021年3月1日的交易数据.

  M(i,2) 开盘价,单位: 元

  M(i,3) 最高价,单位: 元

  M(i,4) 最低价,单位: 元

  M(i,5) 收盘价,单位: 元

  M(i,6) 成交额,单位: 元

  M(i,7) 成交量,单位: 股

请完成下列任务:

  1. 绘制出该只股票最近100个交易日内的收盘价曲线和散点图.
  2. 绘制出该只股票最近100个交易日的涨幅变化曲线和散点图.“涨幅”通过当日收盘价相对于前一个交易日的“收盘价”来计算.另外再用bar绘制涨幅的柱状图.

提示:

plot(M(:,1)',M(:,5)','-')

hold on

plot(M(:,1)',M(:,5)','.')

代码:

(1)

load SH600004.mat

x=[]; y=[];

n=length(M);

Day=M(n-99,1)

for k=n-99:n

    y=[y,M(k,5)];

    x=[x,k];

end

subplot(1,2,1)

scatter(x,y,'.')

xlabel(['交易日开始于:',num2str(Day)]);

ylabel('收盘价:')

title('散点图')

subplot(1,2,2)

plot(x,y)

xlabel(['交易日开始于:',num2str(Day)]);

ylabel('收盘价:')

title('曲线图')

(2)

load SH600004.mat

x=[]; y=[];

n=length(M);

Day=M(n-99,1)

for k=n-99:n

    y=[y,M(k,5)-M(k-1,5)];

    x=[x,k];

end

subplot(1,3,1)

scatter(x,y,'.')

xlabel(['交易日开始于:',num2str(Day)]);

ylabel('涨幅变化曲线:')

title('散点图')

subplot(1,3,2)

plot(x,y)

xlabel(['交易日开始于:',num2str(Day)]);

ylabel('涨幅变化曲线:')

title('曲线图')

subplot(1,3,3)

bar(x,y)

xlabel(['交易日截止于:',num2str(Day)]);

ylabel('涨幅')

title('最近100个交易日内的涨幅变化柱状图')

 

背景:用长度为1200厘米的条材,分别截成长度为64厘米与85厘米的两种成品。

请用穷举法找出一根条材的所有切割方式,并给出每种切割方式的具体信息(包括64厘米成品根数、85厘米成品根数、余料长度)。

提示:输入下列程序

1200/64

1200/85

输出结果:

ans =

  18.750000000000000

ans =

  14.117647058823529

说明:根据上面的输出结果,可知一根条材最多截出18根64厘米的成品,或14根85厘米的成品。找出所有有效的“组合”:一根条材切割出的64厘米成品数量和85厘米成品数量。

len=1200;

n=fix(1200/85);

mat=[];

for i=0:n

    j=fix((1200-i*85)/64);

    y=1200-i*85-j*64;

    mat=[mat,i,j,y];

end

mat

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值