void local fn SpiralMatrix( size as int ) int t = 0, b = size - 1, l = 0, r = size - 1 int value = 0, i, j while ( t <= b && l <= r) { for i = l to r mda(t,i) = value++ next t++ for i = t to b mda(i,r) = value++ next r-- if ( t <= b ) for i = r to l step -1 mda(b,i) = value++ next b-- end if if ( l <= r ) for i = b to t step -1 mda(i,l) = value++ next l++ end if wend for i = 0 to size -1 for j = 0 to size - 1 printf @"%2d \b",mda_integer(i,j) next print next end fn fn SpiralMatrix( 5 ) HandleEvents