例题1:
while(A<C && B<D)
{
if(A>=1)C=C+1;
else{
while(A<=D)
A=A+2;
}
}
100(j<,A,C,102)
101(j,_,_,114)
102(j<,B,D,104)
103(j,_,_,114)
104(j>=,A,1,106)
105(j,_,_,109)
106(+,C,1,T1)
107(=,T1,_,C)
108(j,_,_,100)
109(j<=,A,D,111)
110(j,_,_,100)
111(+,A,2,T2)
112(=,T2,_,A)
113(j,_,_,109)
114(出口)
顺序结构中包含着一些跳转。
例题2:
四元式(op,arg1,arg2,result)
n=0,a=1,n=0.5;
while(a)
{
n++;
h=h*2;
if(h>=8848000)
a=0;
}
100(=,0,_,n)
101(=,1,_,a)
102(=,0.5,_,h)
103(j!=,a,0,105)
104(j,_,_,113)
105(+,n,1,T)
106(=,T,_,n)
107(+,h,h,T1)
108(=,T1,_,h)
109(j>=,h,8848000,111)
110(j,_,_,103)
111(=,0,_,a)
112(j,_,_,103)
113(出口)
例题3:
if((A<0) or (B>0)) then while(C>0) do C:=C*D
100(j<,A,0,103)
101(j>,B,0,103)
102(j,_,_,出口)
103(j>,C,0,105)
104(j,_,_,出口)
105(*,C,D,T)
106(=,T,_,C)
107(j,_,_,103)
108(出口)