Vai al contenuto

Edizione I – Problema 8

  • di

Dato un numero intero positivo n, (n div 2) è il quoziente della divisione intera.
Ad esempio, (6 div 2) è il numero 3, mentre (9 div 2) è il numero 4.

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza composta da n A consecutive (con n > 1), termina la sua esecuzione lasciando sul nastro la sequenza composta da (n div 2) A consecutive.

Esempi

NASTRO INIZIALENASTRO FINALE
AAAAAA
AAAAAAA
AAAA
AAA

Algoritmo

0108
  • Se legge due A consecutive va a destra, scrive X e ritorna a sinistra
  • Altrimenti traduce le X in A e si ferma
CodiceCommenta
(0,A,1,-,>) Ha letto la prima A
(0,X,0,A,>)Traduce le X in A
(1,A,2,-,>) Ha letto la seconda A
(1,X,1,A,>) Traduce le X in A
(2,AX,2,AX,>)Va a destra
(2,-,R,X,<)Scrive X
(R,AX,R,AX,<)Ritorna a sinistra
(R,-,0,-,>)Ricomincia

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *