设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1025|回复: 0

[讨论] 2010/03/02 求高手相助Matlab程序修改求助

[复制链接]

该用户从未签到

尚未签到

发表于 2010-2-24 14:21:41 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
本帖最后由 真龍虎王 于 2010-3-2 10:44 编辑 ) X( V  u3 b0 Q3 [( h. S: q
! c8 u) m3 o5 S" U# G
恳请版上英雄能帮助小弟" l; S$ \' c' Z0 k) G6 b3 b
原本题目:2 o. m- X& ^! k2 ]% g7 h
   NO              GO          TO
7 |( D9 D, v( L/ k2 ^    1                 0             1
& F6 X) j3 K) A& a# Z6 t    2                 1             2/ Z& V1 R# g1 \# P  V- H6 q5 J6 \
    3                 1             4
  T2 ^) x& G) A" g8 ~+ c* j    4                 2             3) {4 R  ~' Z  c% Y( c- N
想表达
: m; ?6 ^' X2 w% G, s(1)NO=1再看TO=1找GO=0当GO=0表示结束
: a/ V6 }5 u7 L( @所以K=          TO    =            1       =[-1];
! p7 A" M' q; G5 V, w4 E3 e, K             NO  [     ]         1   [ -1  ]
5 A" Z4 {. `( b(2)NO=2再看TO=2找GO=1当GO不等于零 看跟GO一样数字的TO
0 v/ \5 q4 W6 b( Z5 G) a                 看TO=1找GO=0当GO=0表示结束
# R7 Q" c6 Y) S. |' u% R1 S8 c所以K=          TO    =             1    2    =[-1 -1;0 -1];
4 d9 E1 R# a& I             NO  [     ]         1   [  -1   -1      
3 F6 H2 F0 G9 T4 _( z- [                                    2       0   -1]
$ F; l+ i$ B+ S6 i( o* G/ C% m7 y! O(3)NO=3再看TO=4找GO=1当GO不等于零 看跟GO一样数字的TO4 H0 }6 A! A/ s2 f3 q
                 看TO=1找GO=0当GO=0表示结束# n; o, `( ^$ R* q; d
所以K=          TO    =             1    2     3    4           =[-1 -1 0 -1;0 -1 0 0;0 0 0 -1;0 0 0 0];
$ D0 ]4 b2 y! o$ i9 O. m             NO  [     ]         1   [  -1   -1     0   -1! [9 f0 V& K4 P( N3 J
                                    2       0   -1     0    0
( L, z! `/ d* Q; }$ [) ?                                    3       0    0     0   -12 @$ A1 K2 u/ t1 X7 ^
                                    4       0    0     0    0 ]( ~3 E; E( p% ~1 c1 [4 h; H: \! W; H
(4)NO=3再看TO=3找GO=2当GO不等于零 看跟GO一样数字的TO5 y" [1 z" ?1 H# K" X( W
                 看TO=2找GO=1当GO不等于零 看跟GO一样数字的TO
# u, L. ?$ J: j' L2 b                 看TO=1找GO=0当GO=0表示结束
$ z' E0 z' a( f' I! s所以K=          TO    =             1    2     3    4           " D/ K+ o" \  k! ]
             NO  [     ]         1   [  -1   -1    -1   -1
/ ?5 w+ j8 t3 u1 \: P& L% t                                    2       0   -1    -1    0
" k! p$ t8 k3 x+ p: K1 d1 ?% I                                    3       0    0     0   -1
- L! Q* ~; Q+ ^8 H4 r& M3 a                                    4       0    0    -1    0 ]9 E, {: x% v( r; o
程序:; ]% r4 P! O+ \' x# x4 Z
NO=[1;2;3;4];
( Y* i% ?1 k' w0 H. y# w/ J. y  NGO=[0;1;1;2];8 e' K% J- g( F) y* G- @. `8 |
TO=[1;2;4;3];
# N- y0 r: k+ ?4 h+ m' v2 O8 F! qk=zeros(length(NO),length(NO));  u& v' N; k: i0 f* o6 r/ K- ~
a=sub2ind(size(k),NO,TO);  W, e$ M- V  D/ o3 r& q1 R+ I! ]: E4 C
k(a)=-1;
1 E# G9 y3 i5 x+ y2 Ffor i=1:length(NO)0 Z8 w" y4 p: K
    s=i;
% w' w- j8 U2 d4 b, n8 q3 ~    while s>=2  `* w/ q# D+ r9 T; A
        s=find(TO==GO(s));) @+ e( e4 _" N6 m& {  _
        k(NO(s),(TO(i)))=-1;. i/ N- f2 s/ [- ^) ~
    end! q, X7 ^# C" ]" R: @
end
5 e) a# Q+ T! A# n9 D! s* E) P9 o3 x1 I" `2 E
现在想改多看一个矩阵P    矩阵大小跟NO相同& }; h4 d9 f7 x) C  C- m
如 P=[7;7;6;1]7 `( T# W! U* D( c- y, `
题目想改为
' h/ }! z2 Q" E; p看NO找TO值再看GO值时顺便看P值- F. l7 B/ W1 _3 U' N3 Q% N: h
原本K是放入-1想改为当:
  P7 d' q; B; e6 ^- c' j5 Q1 KP=7    -1改为放入[-1 0 0;0 -1 0;0 0 -1]
1 O0 C; h9 ~8 t" D5 N  =6    -1改为放入[-1 0 0;0 0 0;0 0 -1], F! \* H  r0 x9 o3 J, h7 z
  =5    -1改为放入[0 0;0 -1;0 -1]
  W7 B' K/ e1 t' R- T; p2 `" ^" g8 r, V( D  =4    -1改为放入[-1 0;0 -1;0 0]
1 a, l* k* v6 i, B6 ~1 R: R  =3    -1改为放入[0;0;-1]
0 ?/ O9 L) h! s4 }$ s; U6 c  =2    -1改为放入[0;-1;0]
6 b6 s2 o# @' _0 I  k+ g" w  =1    -1改为放入[-1;0;0]0 A% f! e( `( r4 C
目前卡关是卡在k矩阵大小是会因为P而变以及-1要改放入矩阵
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

GMT+8, 2025-2-23 14:23

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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