· Andrea Pollini · programmazione · 1 min read

Esercizio C++ | Macchina quasi Turing

Esercizio C++ su di una simulazione di una macchina di Turing

Esercizio C++ su di una simulazione di una macchina di Turing

Creare un simulatore per una macchina quasituring. La macchina ha una memoria di una sola cella, contenente un intero. La macchina quasituring è composta da una serie di operazioni che si eseguono sulla cella. Le operazioni sono:

  • +: incrementa il contenuto della cella di 1
  • -: decrementa il contenuto della cella di 1
  • .: stampa il contenuto della cella
  • @: resetta la cella a zero

Considerando che il contenuto della cella sará poi stampato come lettera dell’alfabeto (a = 0, b = 1, c = 2, …, z = 25, !=26, ,=27) e che la macchina di quasituring legge i programmi sotto forma di stringa:

  • Costruire la macchina di quasituring (in una funzione) e verificarla per i programmi proposti sotto.
  • Costruire i programmi che stampano a video le seguenti stringhe:
    • “ciao”
    • il tuo nome

programmi di test

”abc” -> ”@.+.+.” “aaa” -> ”@…” “abab” -> ”@.+.-.+.” “abab” -> ”@.+.@.+.” “acac” -> ”@.++.@.++.”

Back to Blog

Related Posts

View All Posts »
Funzioni in C++

Funzioni in C++

Le funzioni in C++ rappresentano un costrutto fondamentale per la programmazione. Vediamo come si definiscono e come si utilizzano