N%=5 @%=LENSTR$(N%*N%-1)+1 BotCol%=0 : TopCol%=N%-1 BotRow%=0 : TopRow%=N%-1 DIM Matrix%(TopCol%,TopRow%) Dir%=0 : Col%=0 : Row%=0 FOR I%=0 TO N%*N%-1 Matrix%(Col%,Row%)=I% PRINT TAB(Col%*@%,Row%) I% CASE Dir% OF WHEN 0: IF Col% < TopCol% THEN Col%+=1 ELSE Dir%=1 : Row%+=1 : BotRow%+=1 WHEN 1: IF Row% < TopRow% THEN Row%+=1 ELSE Dir%=2 : Col%-=1 : TopCol%-=1 WHEN 2: IF Col% > BotCol% THEN Col%-=1 ELSE Dir%=3 : Row%-=1 : TopRow%-=1 WHEN 3: IF Row% > BotRow% THEN Row%-=1 ELSE Dir%=0 : Col%+=1 : BotCol%+=1 ENDCASE NEXT END