画出下列伪代码程序的流程图,计算它的环形复杂度。这个程序的逻辑有什么问题吗?

画出下列伪代码程序的流程图,计算它的环形复杂度。这个程序的逻辑有什么问题吗?

C	EXAMPLE
LOOP:DO WHILE Z>0
	A=B+1
	IF A>10
		THEN X=A
		ELSE Y=Z
	END IF
	IF Y<5
		THEN PRINT X,Y
		ELSE IF Y=2
			THEN GOTO LOOP
			ELSE C=3
			END IF
	END IF
	G=H+R
	END DO
	IF F>0
		THEN PRINT G
		ELSE PRINT K
	END IF
	STOP

程序流程图

画出下列伪代码程序的流程图,计算它的环形复杂度。这个程序的逻辑有什么问题吗?_第1张图片

流图

画出下列伪代码程序的流程图,计算它的环形复杂度。这个程序的逻辑有什么问题吗?_第2张图片

环形复杂度

V(G)=判断结点+1=6+1=7
其中判断结点为 1 , 3 , 6,8, 10, 11

逻辑问题

有问题:当Z>0时,容易形成死循环,条件Y<5中包含条件Y=2

你可能感兴趣的:(软工导论)