有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java绘制控制流图

我的任务是制作一个控制流图。首先,我成功地将代码划分为基本块。例如,这里的这个程序:

1 begin

2   int x, y, power;

3   float z;

4   input (x, y);

5   if (y<0)

6     power=-y;

7   else

8     power=y;

9   z=1;

10   while (power!=0){

11     z=z*x;

12   power=power-1;

13   }

14   if (y<0)

15     z=1/z;

16   output(z);

17 end

将转换为以下基本块:

第一区

Line  2   int x, y, power;
Line  3   float z;
Line  4   input (x, y);
Line  5   if (y<0)

第2区

Line  6     power=-y;

第三区

Line  8     power=y;

第四区

Line  9   z=1;

5区

Line 10   while (power!=0){

6区

Line 11     z=z*x;
Line 12   power=power-1;

第7区

Line 14   if (y<0)

第8区

Line 15     z=1/z;

第9区

Line 16   output(z);

我通过扫描文件,并使用Pattern和Matcher根据if、while等语句将程序拆分来实现这一点。基本块是ArrayList,所有这些块都保存在ArrayList>;中

接下来,我保存了一个HashMap,其中基本块相互连接。例如,块1将连接到块2和块3,因为它是一个if语句(if this go one way,else go the other way)。这个HashMap是>;用于块号,以及它所连接的块号列表

所以,我有基本块,以及这些基本块之间的连接列表。我现在的问题是,我不知道如何以图形形式显示它。之前,我使用paint()方法并绘制圆和线来表示一个简单的控制图,其中每个块只有一个到下一个块的连接。然而,我不知道当有多个连接时如何做到这一点。有什么简单的方法吗

谢谢


共 (0) 个答案