EDA365电子论坛网
标题:
Matlab中if循环的条件有两个的话应该用什么语句?
[打印本页]
作者:
dapmood
时间:
2020-4-15 13:42
标题:
Matlab中if循环的条件有两个的话应该用什么语句?
if A and B
: z( U8 [$ @0 Z% C1 U/ M' [, u
C
( i. d. p# `2 [
end
/ r& ^7 X. Y$ k& F& H6 Y& m! [% `
可以吗?
& v0 p1 f* J( u, }+ ]: f' K% g: o
作者:
CCxiaom
时间:
2020-4-15 18:57
3 `3 s* h, j) {( @1 A2 b
if A and B
$ W$ u1 [+ |+ G8 B7 e( i! {5 j
C
& ]8 |9 z2 Y' a: R8 w8 a1 k# T
end
/ M2 o# |* G6 m4 C6 E V
% o% ~" [: I) ~' l9 E
可以这样来表示:
B& u' x. z- ?2 @' z. N* P
if A&&B
' U: P# U) S; U* d
C
$ u, y! i! Z* p
end
作者:
ExxNEN
时间:
2020-4-15 18:58
感觉这样表示总是有些问题,最好不要这样,结果会使自己想不到的。
$ l0 ~9 [ t) |: o* F5 P
比如下面一个简单的,直接用向量作为if的判断条件。
; e% E+ H/ W' F5 _6 w: P$ C! k% O
9 D6 I" d6 K- @; |8 F$ s
%test if
9 f5 N# U1 \# i8 t. l5 J4 B
clear,clc
& [3 h( x: A/ a/ P' x8 @% K
a=[1 0 1 1 0 1];
, x) x% v0 c i2 P" O/ h. l9 T3 N4 `
b=[0 1 0 1 0 1];
, a' Q7 W: m" G0 N1 m
for i=1:6
7 \7 |$ E Z8 l3 f& ^
if a&b
1 w; H/ S; M" `
c(i)=a(i)+b(i);
6 m" {6 A0 R7 N( `* H$ k
else
; Y! @$ b3 i# O; v
d(i)=a(i)+b(i);
& z1 W7 H1 g3 K$ _
end
6 h2 u% h$ ]2 c' f4 x6 S
end
, K. Y l$ |0 N1 ?! [, q
( f t& s# g0 Z i8 `3 B
结果c没有d=1 1 1 2 0 2
5 p6 Q' P& ~ V+ y, I7 |
如下表示才能得到正常结果。
! W, T7 ~0 W3 }4 w" W. K
, w3 f3 p5 e* Y* L0 h( e+ F
%test if
9 d$ S& W" f& B; r* K9 n4 g
clear,clc
$ C D; m: X" q( a
a=[1 0 1 1 0 1];
0 @# l8 z2 q# H) E
b=[0 1 0 1 0 1];
# R* m8 T. n4 S& B; _& i2 D
for i=1:6
( C/ i: m0 c! F% U2 w
if a(i)&b(i)
6 d4 B! c4 o' A' g# h; A) {
c(i)=a(i)+b(i);
) g$ ?( s& @1 d' d
else
8 ?+ {/ W, d! ?6 N, q' S' O7 C& r
d(i)=a(i)+b(i);
8 F- r! Y5 b2 K8 H3 M8 L
end
1 @. c4 @ x( A4 n
end
4 _2 t" I+ q' o2 w$ R
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2