Vai al contenuto

Edizione I

  • di

Problema 1

Programmare una Macchina di Turing che, dato un nastro iniziale contenente la rappresentazione decimale di un numero intero positivo n, <> 0, termina la sua esecuzione lasciando sul nastro la rappresentazione decimale di n*100.

NASTRO INIZIALENASTRO FINALE
43143100
6600

Problema 2

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza di A e B, termina la sua esecuzione lasciando sul nastro una sola T se la sequenza iniziale contiene almeno una B, una sola F altrimenti.

NASTRO INIZIALENASTRO FINALE
BABBABT
BT
AAAF

Problema 3

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza di cifre decimali, termina la sua esecuzione lasciando sul nastro la sequenza che si ottiene eliminando tutte le cifre 0 alla sinistra della cifra diversa da 0 più a sinistra.

Se la sequenza iniziale è composta da sole cifre 0, la macchina deve lasciare sul nastro un solo 0.

NASTRO INIZIALENASTRO FINALE
000431431
00000
0040314031
431431

Problema 4

Una sequenza si dice palindroma se la sua lettura da sinistra verso destra è uguale alla sua lettura da destra verso sinistra.

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza di A e B, termina la sua esecuzione lasciando sul nastro la sola sequenza SI se la sequenza iniziale è palindroma, la sola sequenza NO altrimenti.

NASTRO INIZIALENASTRO FINALE
ABABASI
ABBASI
BABBANO
ASI

Problema 5

Indichiamo con AnBm una sequenza del tipo A…AB…B.

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza del tipo AnBm, con n>0 e m>0, termina la sua esecuzione lasciando sul nastro

  • una sola A se n>m
  • una sola B se m>n
  • una sola C se n=m.
NASTRO INIZIALENASTRO FINALE
AAAABBA
AAABBBBBB
AAABBBC

Problema 6

Indichiamo con s e t due generiche sequenze formate da A e B.

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza del tipo sCtC, termina la sua esecuzione lasciando sul nastro la sequenza SI se S e T sono uguali, la sequenza NO altrimenti.

NASTRO INIZIALENASTRO FINALE
ABACABACSI
BBBCBBBCSI
BABACBBACNO
BBBCABCNO

Problema 7

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza di A e B, con almeno una B, termina la sua esecuzione lasciando sul nastro la sequenza di sole B consecutive (cioè non separate da alcuno spazio) che si ottiene da quella iniziale eliminando tutte le A.

NASTRO INIZIALENASTRO FINALE
ABAABABB
BAAABABBBBBB
BBBBBB

Problema 8

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.

NASTRO INIZIALENASTRO FINALE
AAAAAA
AAAAAAA
AAAA
AAA

Problema 9

Programmare una Macchina di Turing che, dato un nastro iniziale contenente una sequenza di A e B, termina la sua esecuzione lasciando sul nastro la sequenza che si ottiene da quella iniziale rimpiazzando due o più A consecutive con una sola A e due o più Bconsecutive con una sola B.

NASTRO INIZIALENASTRO FINALE
ABAABBBAABABA
BBAABBBABBABAB
AAAA
BBB

Lascia un commento

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