Originariamente inviato da RooccoXXI
Ciao a tutti.

Sto leggendo alcuni vecchi programmi in BASIC che mi piacerebbe riscrivere in C++ ma non ci capisco una mazza.

La struttura del programma è la seguente:
codice:
          // Dichiarazione e inizializzazione variabili
GOSUB 100
END
100     IF (...) GOTO 200
          // Istruzioni
          GOTO 300
200     // Istruzione
         GOSUB 100
         // Istruzioni
         GOSUB 100
         // Istruzioni
         GOSUB 100
         // Istruzioni
         GOSUB 100
// Istruzione
300    RETURN
A cosa servono l'istruzione GOSUB e RETURN, esattamente?!

Proprio non riesco a capire il flusso del programma...

Non è una cosa difficilissima, basta tradurre dall'inglese
GOSUB non ti sembra anche a te una specie di call come in assembly (come un goto solo che esiste un return)?
RETURN .... it's simply return non c'è nient'altro da aggiungere

Dopo l'inizializzazione delle variabili, va all'etichetta 100, esegue l'if. se è vera la condizione va all'etichetta 200 sennò alla 300 (se va alla 300 esce perchè c'è un RETURN). Se va alla 200 invece esegue le istruzioni e fa un goto alla 100, dove rifà l'if fin quando quella condizione è vera, continua a ciclare.

Se non capisci sto codice, meglio se lasci perdere