CLS PosizioneIniziale: LOCATE 1,1 : PRINT SPACE$(80); : LOCATE 1,1 INPUT "Riga,Colonna primo punto (1<=C<=50, 3<=R<=23)"; R,C IF R<3 OR R>23 OR C<1 OR C>50 THEN GOTO PosizioneIniziale LOCATE R,C : PRINT "O"; Spostamento: LOCATE 1,1 : PRINT SPACE$(80); : LOCATE 1,1 INPUT ; "direzione (n,s,e,w)"; dir$ INPUT " numero passi"; np SELECT CASE dir$ CASE "e" IF C+np>50 THEN GOTO Spostamento FOR i=1 TO np : LOCATE R,C+i : PRINT "O"; : NEXT C=C+np CASE "w" IF C-np<1 THEN GOTO Spostamento FOR i=1 TO np : LOCATE R,C-i : PRINT "O"; : NEXT C=C-np CASE "s" IF R+np>23 THEN GOTO Spostamento FOR i=1 TO np : LOCATE R+i,C : PRINT "O"; : NEXT R=R+np CASE "n" IF R-np<3 THEN GOTO Spostamento FOR i=1 TO np : LOCATE R-i,C : PRINT "O"; : NEXT R=R-np CASE ELSE GOTO Spostamento END SELECT GOTO Spostamento