Máquina de Turing "clásica"
Dada una cadena de (0+1)*. La máquina debe indicar cuántos bloques de 0's hay. Por ejemplo, ante la siguiente entrada:
...B0001001001000100B...
debe obtener como salida
...B00000B...
ya que se le han pasado 5 argumentos en la cadena de entrada.
Dada una cadena de (0+1)*. La máquina debe indicar cuántos bloques de 0's hay. Por ejemplo, ante la siguiente entrada:
debe obtener como salida
ya que se le han pasado 5 argumentos en la cadena de entrada.
| 0 | 1 | B | X |
q0 | (q0, 0, R) | (q1, X, R) | (q4, B, L) | |
q1 | (q1, 0, R) | (q1, 1, R) | (q2, B, R) | |
q2 | (q2, 0, R) | | (q3, 0, L) | |
q3 | (q2, 0, L) | (q2, 1, L) | | (q0, X, L) |
q4 | (q4, B, L) | (q4, B, L) | q5 | |
q5 | | | | |
Máquina de Turing Multicinta
MT que calcula al igual que la anterior los bloques de 0's pero con una MT multicinta. Se utiliza una cinta de lectura que leerá la cadena que se le pasa y una cinta de salida para escribir el resultado del calculo.
MT que calcula al igual que la anterior los bloques de 0's pero con una MT multicinta. Se utiliza una cinta de lectura que leerá la cadena que se le pasa y una cinta de salida para escribir el resultado del calculo.
| {0, B} | {1, B} | {B, B} |
q0 | (q1, {B, R}, {0, R}) | | (q3, {B, R}, {B, R}) |
q1 | (q1, {B, R}, {B, Z}) | (q0, {B, R}, {B, Z}) | (q3, {B, R}, {B, R}) |
q2 | | | |
Va de lujo, no problem