如何在 PlantUML activity 图中用来自 C 的 "continue" 语句表示循环

How to represent a loop with a "continue" statement from C in a PlantUML activity diagram

我需要使用 PlantUML 将下面的 C 代码转换为 activity 图。

从下面的代码中实现 "continue" 语句的好的解决方案是什么?

    void function_1(){
    int a = 0;
    int b =0;
      for (int i; i < 8; i++)
      {
        if (i < 2)
        {
           continue;
        }
        if (i > 4)
        {
            a = 1;
        }           
        else
        {
           b = 2;
        }
      }
    }

不管是否将代码转换为另一种语言,我都会首先通过以下方式对其进行优化:

void function_1(){
int a = 0;
int b =0;
  for (int i=0; i < 8; i++)
  {
    if (i > 4)
    {
        a = 1;
    }           
    else if ( i >= 2 )
    {
       b = 2;
    }
    else
    {
        /* - nothing to do */
        /* - this statement is here as proof that we do not want to handle
        /*   other cases, as opposed to just forgetting about them */
        /* - it can be used in the future for extension, as needed */
    }
  }
}

我不懂 C,但在我看来,在 PlantUML 中表示逻辑的一种方式如下:

start
while (i < 8 ?)
  if (i > 4 ?) then (yes)
      :a = 1;
  else (no)
      if (i >= 2 ?) then (yes)
      :b = 2;
      else (no)
      endif
  endif
 endwhile (no)
:Carry out the next task;
end

"Carry out the next task" 任务是一个占位符。它应该替换为您的应用程序接下来应该执行的任何操作。

产生 the following diagramme: