You are on page 1of 2

Break, return, exit

• Ricapitolando, esistono tre diverse istruzioni di uscita:

break ;

• causa l’uscita da un blocco di codice (parentesi graffe)

• Non ci sono parametri associati a break;

• E’ sconsigliata (tranne che nello switch) poiché una piccola modifica del programma (introduzione
di un altro blocco) potrebbe cambiarne l’esito;

return valore ;

• Causa l’uscita immediata da una funzione

• Può essere seguita da un parametro (scalare) del tipo specificato nella dichiarazione della funzione
(a meno che non sia specificato il tipo void, vuoto)

exit(valore);

• Causa l’uscita immediata da tutto il programma

• Ha un parametro tra parentesi del tipo corrispondente a quello restituito dalla funzione main (di
solito int). Il valore di questo parametro sarà restituito al sistema operativo

Calcolabilità e Trattabilità
Nasce come argomento matematico ma ha delle conseguenze ben più pratiche. Per introdurre il
concetto della Calcolabilità bisogna introdurre la macchina di Turing .
La macchina di Turing è una macchina astratta che è un prototipo o meglio una possibile
architettura di realizzazione di un calcolatorequindi si tratta di una macchina alternativa a
quella di Von Neumann.
La macchina di Turing è composta da una testina (che nel nostro disegno è chiamato controllo) e
da un nastroquesta testina è sia in grado di leggere sul nastro e sia di scriverci sul nastro
(inoltre si può spostare sia a sinistra che a destra). Il nastro concettualmente è illimitato.
La macchina di Turing presenta un suo stato interno ovvero si ricorda in che punto si trova nel
nastro.
Inoltre la macchina di Turing può prendere delle decisioni su quello che fa in seguito ovvero se
andare a sinistra o a destra , leggere o scrivere, in funzione di quello che ha letto nell’occasione
precedente.
Tale macchina per farla diventare un calcolatore dobbiamo programmare la sua CPU (che
sarebbe il controllo nel disegno )in modo che in base a quello che legge compie un azione(tra
quelle elencate)oppure un’altra

Una Macchina di Turing:


– Ha un nastro illimitato
– Sa leggere e scrivere una casella per volta
– Ricorda lo stato in cui si trova
– Legge dal nastro
– Scrive sul nastro
– Può cambiare stato
– Può cambiare direzione

You might also like