0

有人可以帮我理解以下伪代码:

int x=2, y=3, z=4

DO 
  x *= 3
  If (x>50) Then
     y --
  Else
    z ++
  End If
 WHILE(y>0)

特别是,我不确定 'z++' 、 '*=' 和 'y--' 是什么意思。另外,我将如何为此创建一个完整的跟踪表(列“x”、“y”和“z”)。

谢谢

4

1 回答 1

0

“z++”是指变量z递增的后缀版本。意思是 z 现在是 z+1。“ *= ”是 a=a*b (a*=b) 的缩写形式。

DO 
  x *= 3
  If (x>50) Then
     y --
  Else
    z ++
  End If
 WHILE(y>0)

当 y 大于 0 时,执行以下操作:将 x 乘以 3。如果 x 大于 50,则将 y 降低 1。如果 x 小于或等于 50,则将 z 增加 1。

所以对于三元组 (x,y,z) 它将给出以下步骤: (2,3,4) , (6,3,5), (18,3,6), (54,2,6), ( 162,1,6), (468,0,6)。

于 2014-03-17T21:34:37.673 回答