找回密码
 注册
查看: 590|回复: 1
打印 上一主题 下一主题

matlab多重循环问题,该怎么让程序按照希望的方式进行

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-7-8 14:02 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

u(1)=0;

ki(1)=9000;

a(1)=3/ki(1)*2;

for i=2:4


. C* J4 F& p6 ^6 Vu(i)=a(i-1)+u(i-1)if u(i)>2    ki(i)=0 else    ki(i)=9000    for m=2:4        a(m)=3/ki(m)*2        continue    endend

end

结果显示超出索引

请问要怎么让结果正常输出呢

像下面这样

左边是跑出来的结果

右边是我希望的结果

4 e+ Q( f. N4 J+ S! d* U# y+ f0 A

) v1 t- @4 j4 O) B  w- i, P2 C4 ?


- d+ S" w3 H4 p. J

麻烦各位大神给点提示

谢谢啦!!!


1 _0 i" d4 P& u- s# `

( Y2 S' |' k5 |

9 f/ `, D+ v6 Y' t8 F1 k2 @
. y* b* _" U; N1 C/ S/ `1 g

该用户从未签到

2#
发表于 2019-7-8 18:10 | 只看该作者
if u(i)>2* r3 k3 B# ~) \# U0 A+ H
    ki(i)=0 5 @4 W, ?1 k# q: {9 A- O
else
" u  w& M+ X8 A5 O    ki(i)=9000
7 s8 ?0 i  F1 K6 A6 Z3 L  C/ P    for m=2:4
+ @4 {- L+ b( J& F" m& R4 D' K        a(m)=3/ki(m)*2
& ?! y. c+ i/ `; i        continue6 h* w; y" I) W# G( D/ F/ \+ D& L# X
    end
' Q! y: ?7 E7 R( b% Zend' L1 z9 F! E* v* y6 Y0 F6 ^
这里, u(i) <= 2的时候, for循环初始化a(m), 你的ki(m)初始化了吗?6 f# g8 Z/ y* x

0 K7 ^# y0 A) H1 G) Fu = zeros(4, 1);
) d0 ^! P. n5 I" B1 Gki = ones(4, 1) * 9000;0 ~( E: U' s( P: m. l7 D
a = ones(4, 1) * 3/ki(1)*2;
3 L) O. N. Q) b8 I, w- J7 r. ^7 a6 I4 k8 u/ }, _0 Z
for i=2:4) @% Y' b& ]+ x1 ]3 f4 r4 A

) T2 z! Y0 z* v9 a* I    u(i)=a(i-1)+u(i-1);
% y4 X! m  f, B8 T9 L5 V; K    if u(i)>2# W! ~) O: o3 H' ?$ X  ~
        ki(i)=0 ;
+ K; Y9 Z, Z. K. A( |    else
. `  `! S' t' E( ]9 z  V9 u        ki(i)=9000;
6 Q0 [; y: A; _        for m=2:4' d& S# d* n, b& ?* C& F9 I/ p& x
            a(m)=3/ki(m)*2;
' p! i( t1 g$ q: u            continue
. z2 M3 h4 F) g: e$ g0 n; x( t$ G        end4 X; Y. ], i& j! P
    end
) ~. d4 r2 W4 _4 }& w5 fend
# Z9 I  @& d( t1 j不知道这样行不行,也不知道计算对不对,你试一下哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-1 01:45 , Processed in 0.062500 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表